gpt4 book ai didi

authentication - Firebase Auth 不允许在第三方应用程序 webview 上使用用户代理

转载 作者:行者123 更新时间:2023-12-05 07:43:42 25 4
gpt4 key购买 nike

我在使用 OAuth 身份验证时遇到问题。问题是 OAuth 身份验证在普通浏览器上正常工作,但它不适用于第三方应用程序的 Web View ,例如 LINE 或 Facebook 的 Messenger。发生在第三方应用程序的 WebView 上,当用户点击“使用谷歌登录”时,谷歌将立即显示错误页面 403 错误:“disallowed_useragent”。 (当我尝试通过 Messenger 将指向我的 Web 应用程序的链接发送给我的 friend 时,会发生这种情况。当我的 friend 单击该链接时,Messenger 在他们的 Web View 中打开我的 Web 应用程序。我的 friend 将无法单击登录然后)

因此,我进行了一些搜索,发现 Google 已弃用通过 WebView 进行的 OAuth 身份验证。这是 LINK .

所以我的问题是: 如果检测到 Web View ,是否可以强制用户打开普通浏览器? 或者有一些方法可以解决这个问题吗?

我为此使用了 Firebase 身份验证。我的所有代码都使用 Firebase SDK 进行身份验证 firebase-auth.js 和 firebase.js)

最佳答案

Google 限制来自 webview 和 iframe 的身份验证,它允许 safari webkit。如果您使用 safari 用户代理覆盖用户代理,那么它将起作用。 试试这个,一旦它会起作用

    webView.getSettings().setUserAgentString("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36");

关于authentication - Firebase Auth 不允许在第三方应用程序 webview 上使用用户代理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43509555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com