Ionic Capacitor InAppBrowser谷歌登录遇Error 403: disallowed_useragent
解决谷歌登录Error 403: disallowed_useragent问题
以下是针对你遇到的问题的可行解决方案:
修正User-Agent配置
你当前设置的overrideUserAgent值过于简短,谷歌登录的安全机制可能不认可。建议替换为标准的桌面Chrome浏览器UA,示例:overrideUserAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36"修改后执行
ionic capacitor sync android再重新构建。针对Android单独配置WebView UA
若全局overrideUserAgent不生效,可在Capacitor配置的android区块单独设置:const config: CapacitorConfig = { appId: 'br.com.app.Example', appName: 'Example', webDir: 'www', bundledWebRuntime: true, android: { overrideUserAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36" } };检查谷歌云控制台OAuth配置
确保你已在谷歌云控制台中为Android应用创建了对应的OAuth客户端ID,填写正确的包名(br.com.app.Example)和SHA-1指纹。仅配置Web应用客户端ID会导致原生App被拦截。清理项目缓存并重新构建
执行以下命令清理旧缓存并重新同步构建:ionic capacitor clean android ionic capacitor sync android ionic capacitor build android改用Capacitor谷歌原生登录插件
避免WebView跳转带来的UA限制问题,推荐使用官方的@capacitor/google-auth插件,实现原生登录流程。安装后按照文档配置原生客户端ID,直接调用原生API完成登录,无需依赖WebView的UA设置。
内容的提问来源于stack exchange,提问作者Arnaldo Junior
相关产品推荐
相关产品推荐

