因为几天似乎我们的Android和iOS应用不再能够使用OAuth连接。的确,我们得到了403" disalloded_useragent"错误。
似乎使用" Web应用程序"客户ID被阻止这些应用程序。但是在Android版本上,我们正在使用WebView。
阅读https://developers.googleblog.com/2016/08/modernizing-oauth-interactions-innative-native-apps.html:
- 应该必须使用" Google登录"?
- " Android"客户ID是否具有" Offline_access"权限?
- 我们希望Android/iOS/Web使用相同的" ID客户端",我们可以在Android和iOS上更改用户吗?
预先感谢您。
亲切地。
在Android中:
尝试以下代码修复Android中的OAuth 2 Gmail连接失败问题
mWebView.getSettings().setUserAgentString("Mozilla/5.0 Google");
在iOS中:
尝试以下代码修复iOS
中的OAuth 2 Gmail连接失败问题目标C:
NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36", @"UserAgent", nil];
[[NSUserDefaults standardUserDefaults] registerDefaults:dictionary];
Swift 3.0:
let dictionaty = NSDictionary(object: "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36", forKey: "UserAgent" as NSCopying)
UserDefaults.standard.register(defaults: dictionaty)
或另一种方法是在您的config.xml文件
中添加以下代码<preference name="OverrideUserAgent" value"Mozilla/5.0 Google" />
有关该用户代理的简要信息,请参考链接:https://mobiforge.com/research-analysis/webviews-and-user-agent-strings