【问题标题】:OAuth Facebook page as mobile (useragent and cordova)OAuth Facebook 页面作为移动设备(useragent 和 cordova)
【发布时间】:2017-03-08 20:46:34
【问题描述】:

我必须更改我的 cordova 应用程序中的用户代理,以便谷歌登录继续工作(谷歌现在似乎阻止了 webviews 访问他们的 oauth 工作流程)。

我在 config.xml 中添加了这个首选项:

<preference name="OverrideUserAgent" value="Mozilla/5.0 Google" />

这解决了 google 问题,但现在 facebook 登录页面不像移动设备那样加载。它加载浏览器登录页面(有意义)。

我找到了强制桌面模式的方法: http://www.facebook.com/?m2w

有没有类似的东西,但要强制移动版本。

我应该使用其他用户代理“Mozilla/5.0 Google”吗?

此网址需为手机版:https://touch.facebook.com/v2.0/dialog/oauth

谢谢。

【问题讨论】:

    标签: facebook cordova oauth agent


    【解决方案1】:

    可能有点晚了,但由于我遇到了同样的问题并找到了解决方案,我会发布它:

    直接复制粘贴的答案是:

    <preference name= "OverrideUserAgent" value="Mozilla/5.0 (Linux; Android 4.4.4; One Build/KTU84L.H4) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/28.0.0.20.16;] Mozilla/5.0 (Linux; Android 4.4.4; One Build/KTU84L.H4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Mobile Safari/537.36" />
    

    对于其他应用:

    Android 版 Facebook 用户代理字符串:

    Mozilla/5.0 (Linux; Android 4.4.4; One Build/KTU84L.H4) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/28.0.0.20.16;]
    

    Android 用户代理字符串

    Mozilla/5.0 (Linux; Android 4.4.4; One Build/KTU84L.H4) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36
    

    Chrome for Android 用户代理字符串

    Mozilla/5.0 (Linux; Android 4.4.4; One Build/KTU84L.H4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.135 Mobile Safari/537.36
    

    iOS 版 Facebook 用户代理字符串

    Mozilla/5.0 (iPhone; CPU iPhone OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12D508 [FBAN/FBIOS;FBAV/27.0.0.10.12;FBBV/8291884;FBDV/iPhone7,1;FBMD/iPhone;FBSN/iPhone OS;FBSV/8.2;FBSS/3; FBCR/vodafoneIE;FBID/phone;FBLC/en_US;FBOP/5]
    

    Twitter for iOS 用户代理字符串

    Mozilla/5.0 (iPhone; CPU iPhone OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12D508
    

    来源:https://mobiforge.com/research-analysis/webviews-and-user-agent-strings

    【讨论】:

      【解决方案2】:

      虽然你不应该覆盖用户代理,因为你会遇到 admob 的问题,并且你会得到错误的分析数据。但是由于带有 firebase auth 的 webview 即使使用他们的 give cordova oauth 解决方案也无法正常工作,请尝试改用它:

      &lt;preference name= "OverrideUserAgent" value="Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36" /&gt;

      【讨论】:

        猜你喜欢
        • 2014-10-25
        • 2014-03-30
        • 1970-01-01
        • 1970-01-01
        • 2016-05-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多