【发布时间】:2015-05-19 22:27:44
【问题描述】:
我已经接管了内容管理平台的 Google Analytics API 仪表板的开发工作,并升级了代码以使用 OAuth2,因为最近禁用了旧的 oauth。身份验证流程和后续 API 调用在我的 localhost 上都可以正常工作以进行开发。
问题是在尝试来自不同域的代码时。 Google 希望通过开发者控制台将 redirect_uri 列入白名单,如果不存在,则会抛出 Error: redirect_uri_mismatch
由于这是一个自托管(+ 开源)包,人们可以在自己的服务器上安装,我无法添加所有可能的@987654323 @ 开发者控制台中应用键的值。
经过大量谷歌搜索并试图理解文档后,我得到的印象是有两种可能的解决方案。
指示用户转到 Google 开发者控制台,并创建自己的应用程序密钥,然后也通过分布式应用程序中的 OAuth2 流来提供代码访问Google Analytics 中的数据。
使用
urn:ietf:wg:oauth:2.0:oob的 redirect_uri 值和 Installed App 密钥,指示人们在身份验证后将代码复制/粘贴回自托管应用程序。
这些都不是真正吸引人,因为它为用户增加了一堆复杂性(尽管选项 2 听起来大多可行)。还有其他选择,还是我只是忽略了一些简单的事情?
【问题讨论】:
标签: oauth google-api google-oauth