我正在尝试从Eventbrite API检索订单。我有一个有效的OAuth令牌和订单号。我已经通过使用邮递员(已成功返回正确的JSON)进行了验证。
但是,当我使用以下c#代码进行呼叫时,我得到401未经授权:
var client = new HttpClient();
var req = new HttpRequestMessage(HttpMethod.Get, "https://www.eventbriteapi.com/v3/orders/{orderNo}");
req.Headers.Add("Authorization", "Bearer {authToken}");
var response = await client.SendAsync(req);
我试过将标头替换为:
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("{authToken}");
我也尝试过:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.eventbriteapi.com/v3/orders/{orderNo}");
request.Headers.Add("Authorization", "Bearer {authToken}");
request.Accept = "application/json";
using(WebResponse response = request.GetResponse())
{
using(Stream dataStream = response.GetResponseStream())
{
using(StreamReader reader = new StreamReader(dataStream))
{
string responseFromServer = reader.ReadToEnd();
}
}
}
所有这些都得到401响应。
我知道authtoken和eventid是正确的,所以我的代码一定有问题。
我对认证令牌做错了吗?
最佳答案
您是否在EventBrite API上尝试了?token = {authToken}选项?
这至少可以确认报头的发送方式是否存在问题。
http://developer.eventbrite.com/docs/auth/