[英]Calling Base REST API
我正在尝试调用需要接受和授权标头的基本API。 我在控制台应用程序中有以下代码,但始终收到400错误。 我已经在提琴手中拦截了呼叫,并且标题不存在。 如果我在提琴手中手动创建该呼叫,则该呼叫有效。 我在请求中缺少什么吗?
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("https://api.getbase.com/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
HttpResponseMessage response = await client.GetAsync("v2/users/self");
if (response.IsSuccessStatusCode)
{
}
}
这是文档https://developers.getbase.com/docs/rest/articles/first_call
下面的示例在使用curl PHP时有效,请注意带有“ User-Agent”的行,请不要忘记$ ACESS_TOKEN。
$ch = curl_init('https://api.getbase.com/v2/leads');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Accept: application/json',
'User-agent: '.$_SERVER['HTTP_USER_AGENT'], // USER-AGENT
'Content-Type: application/json; charset=utf-8',
'Authorization: Bearer ' .$ACCESS_TOKEN
)
);
您应该将User-Agent
标头添加到请求中,因为错误消息告诉您执行此操作。
错误“:{”代码“:” invalid_header“,”消息“:”无效的请求标头“,”详细信息“:”标头'User-Agent'格式错误,丢失或具有无效值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.