旋转到c#用户标志

本文关键字:标志 用户 旋转 | 更新日期: 2023-09-27 18:05:01

我正在尝试在c#中为Pushbullet API复制这个Curl调用。

curl https://api.pushbullet.com/v2/pushes '
      -u <your_api_key_here>: '
      -d device_iden="<your_device_iden_here>" '
      -d type="note" '
      -d title="Note title" '
      -d body="note body" '
      -X POST
下面是我复制它的代码:
var response = default(IRestResponse);
var request = new RestRequest(Method.POST) { RequestFormat = DataFormat.Json };
var client = new RestClient();
client.BaseUrl = "https://api.pushbullet.com/v2/";
request.Resource = "pushes";
var bodyInformation = string.Concat(" { '"", Config.Settings.PushbulletAPIKey,
                        "'": { '"type'":'"note'", '"title'":'"", title, "'", '"body'":'"", message, "'" } }");
request.AddBody(bodyInformation);
response = client.Execute(request);

当我发送它时,它返回这个:

{"error": {"message": "authentication token is missing or invalid.", "type": "invalid_user"}}

参考API页面:

https://docs.pushbullet.com/

https://docs.pushbullet.com/v2/pushes

旋转到c#用户标志

您在body内部传递凭据,而不是设置客户端的Authenticator属性以使用基本身份验证来传递凭据。

curl -u交换机使用username:password凭证对服务器进行基本认证。您发布的语句使用API密钥作为用户名和空密码。

你应该这样写:

client.Authenticator = new HttpBasicAuthenticator(
                               Config.Settings.PushbulletAPIKey, "");