【发布时间】:2017-03-07 05:23:40
【问题描述】:
Google 不再允许嵌入 webview,因为它是用于 OAuth 登录的 disallowed_useragent。在大多数情况下,这完全没问题,并且有一种解决方法。但是,我遇到了这样一种情况,这会阻止网站使用 Web 服务器 OAuth 实现。
问题:
运行 Google PHP SDK 的 Nginx PHP 服务器,使用他们的 O-Auth 实现。这适用于除嵌入浏览器之外的所有内容。通常这是可以的,但是,如果用户尝试在使用嵌入式浏览器的应用程序中注册我们的网站,我们会收到 disallowed_useragent 错误(见底部图片)。这在 Android Facebook Messenger 中似乎不是问题,但可以在 iPhone 7 Plus Facebook Messenger 上复制。
当前研究:
我试图寻找明确的解决方法。例如。强制链接在主要手机浏览器(例如 Safari 应用程序)中打开的方法,但所有实现都指向应用程序端修复,这无法从网站完成。
问题:
当某些用户可能正在使用这些嵌入式浏览器时,我如何实施 Google Oauth,而不需要用户采取额外的手动操作(例如,在 Safari/Chrome 中打开)?
【问题讨论】:
-
看看这个帖子,没有其他解决办法stackoverflow.com/questions/41829530/…
-
从技术上讲,您可以设置 webview 的用户代理字符串以模仿桌面浏览器。
-
@Lukasz032 问题出在您无法控制的应用程序上,例如 Facebook Messenger...
标签: php mobile oauth google-oauth embedded-browser