angular和dropbox可以(用代码流获取令牌)

时间:2016-05-13 14:22:45

标签: angularjs dropbox

我有这个片段:

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请求的工具......所以我不知道我在这里缺少什么......

可以提供帮助吗?

1 个答案:

答案 0 :(得分:0)

错误消息表明API没有收到预期的参数,或者至少没有达到预期的格式。 documentation for /1/oauth2/token说:

  

需要使用应用程序的密钥和密钥对/ oauth2 / token进行身份验证。这些可以作为POST参数传递(参见下面的参数)或通过HTTP基本身份验证传递。如果使用基本身份验证,则应将app键作为用户名提供,并应提供app secret作为密码。

根据您的Content-Type标题,您似乎尝试将参数作为JSON提供。尝试将它们作为POST参数发送。