我有这个片段:
var req = {
method: 'POST',
url: 'https://api.dropboxapi.com/oauth2/token',
headers: {'Content-Type': 'application/json'},
data: {
'code': authCode,
'grant_type': 'authorization_code',
'client_id': 'my_id',
'client_secret': 'my_secret',
'redirect_uri':'http://localhost%3A8080/main'
}
};
return $http(req).then(function(response){
console.log(response.status);
return response;
}, function(err){
console.log(err);
});
总是会出现“错误请求”,因为“”没有可用于给定请求的身份验证功能“”
相同的数据适用于发送REST请求的工具......所以我不知道我在这里缺少什么......
可以提供帮助吗?
答案 0 :(得分:0)
错误消息表明API没有收到预期的参数,或者至少没有达到预期的格式。 documentation for /1/oauth2/token说:
需要使用应用程序的密钥和密钥对/ oauth2 / token进行身份验证。这些可以作为POST参数传递(参见下面的参数)或通过HTTP基本身份验证传递。如果使用基本身份验证,则应将app键作为用户名提供,并应提供app secret作为密码。
根据您的Content-Type
标题,您似乎尝试将参数作为JSON提供。尝试将它们作为POST参数发送。