Google oAuth2流程 - 我做错了什么?

时间:2015-09-22 12:13:54

标签: oauth oauth-2.0 google-oauth torii

我在http://localhost:4200托管了SPA 我还在http://localhost:1337

托管了API

我的SPA正在使用Torii来处理流量,然后我收回了authorizationCode,然后我尝试将其发送到我的服务器进行处理。

以下是我在google上的配置:

Google oAuth config

正如您所看到的,我已经包含了所有可能的网址以防万一!

现在,当我将该authorizationCode传递给我的服务器进行验证然后向客户端提供会话时,我总是回来redirect_uri_mismatch - 即使我可以在google请求中看到redirectUrl正是列出的内容在oAuth配置页面中:

  

http://localhost:1337/api/v1/auths/google_oauth2

我这样做错了吗?我是否可以从浏览器启动进程然后从服务器验证authorizationCode?

我可以确认api密钥和客户端ID和密码都是正确的。

[UPDATE]

以下是回购:https://github.com/wayne-o/ember-waterlock-example

1 个答案:

答案 0 :(得分:0)

为了做到这一点,源和重定向url需要相同。这是一个痛苦,因为我在谷歌文档中读到,你可以在不同地方托管的各种应用程序“包”之间共享身份验证代码。

无论如何 - 为了完成这项工作,您可以使用以下命令通过ember代理API:

ember server --proxy http://localhost:1337

然后将所有内容配置为http://localhost:4200 - 包括您在google oauth控制台上可能拥有的所有网址。

从那以后,你所有最疯狂的梦想都会成真。

作为AFAICS,这应该是有效的,而不需要这一切。