android - 通过 Webview 授权我的网站 Google 登录
问题描述
我有一个网站应用程序,我已成功集成了 google 和 facebook 登录。问题在于,如果该网站通过 Facebook Messenger 等原生应用程序链接到某人,当点击该链接时,会创建一个 Webview 来展示该网站。谷歌登录现在阻止通过网络视图进行授权,我无法获得授权工作。Facebook 似乎破坏了在 url 末尾添加“cb=”的回调 url。
我研究了几种解决方法:
- 让我的网站强制打开本机浏览器
- 应用声称的 https 重定向
- 深层链接
我似乎尝试或搜索的任何东西都没有解决方案。在这种情况下,我拥有网站而不是 webview。我已经看到其他网站通过 webviews 以这种方式进行身份验证,但我无法弄清楚他们是如何做到的。
解决方案
如果您使用 Google 登录,则需要使用 AppAuth 模式登录,这被认为是最佳移动实践,并由某些提供商强制执行。
这涉及移动应用程序本身打开系统“应用程序内”浏览器并触发 OpenID Connect 授权请求。您将无法使用网站执行移动登录。
要开始使用 AppAuth 模式,可以从下面我的博客文章开始,然后看看您是否可以重新配置示例以使用 Google 配置进行登录:
很高兴回答后续问题,但希望这能让你朝着正确的方向开始......
推荐阅读
- docker - 无法在云运行中运行 kibana
- python - 带有 Reportlab 的 PyQt5 项目对 Pyinstaller 有问题
- python - 抓取 instagram 帖子链接时清空数组
- php - 在某些情况下,如何更改 WooCommerce 结帐页面上的“您的订单”文本
- vba - 在表格行中插入行号
- sql - 通过 pypyodbc 从外部表中丢失行
- php - 如何在控制器存储 laravel 中传递和插入 id
- javascript - 在反应中创建一个搜索栏
- mysql - 绑定datagridview不接受新行
- python - 有没有办法从在 Google Cloud Platform dataproc 集群上运行的 Jupyter notebook 中保存的 .py 文件中导入和运行函数?