-1

我正在尝试构建一个从用户的 Google 日历中获取事件的应用程序。一旦我获得了用户获得的授权码并被要求在另一个页面中输入,我尝试将其交换为 access_token。但是我在发送以检索令牌的发布请求中出现错误。

client_id=encodeURIComponent("id.apps.googleusercontent.com");
client_secret=encodeURIComponent("secret.apps.googleusercontent.com");
$.post("http://accounts.google.com/o/oauth2/token/code="+auth_code
                +"&client_id="+client_id+"&client_secret="+client_secret
                +"&redirect_uri=urn:ietf:wg:oauth:2.0:oob&grant_type=authorization_code",
        function(response){
            console.log('Response = '+ response);
        }
);

有人可以告诉我发布请求中的错误吗?

4

1 回答 1

1

您需要查看返回的响应以了解错误原因。这似乎是 jQuery 代码,因此您可以在 Chrome 开发人员工具(视图、开发人员、开发人员工具、网络)中的网络选项卡下查看 HTTP 响应。

也就是说,除非您在服务器端环境中使用 jQuery,否则您使用的是错误的 OAuth 流程。您应该使用隐式/javascript 流程,您不需要获取授权代码或交换它——您会立即获得在您的 URL 的哈希片段中返回的访问令牌:

OAuth2用户代理

请用语言/环境/目标更多地澄清您的问题。

于 2012-09-17T02:08:28.257 回答