共计 935 个字符,预计需要花费 3 分钟才能阅读完成。
【案例形容】
最近在将本人开发的 WEB H5 利用打包成快利用后,在应用 Google 账号注册、登录时,却遇到了如下图的 403 报错。
【问题剖析】
从上图谬误页面能够看到,Google 给出了起因:Error:disallowed_useragent。也就是说 Google 对加载 H5 利用的浏览器 UA 进行了限度,而且它倡议是 chrome 浏览器。显然问题答案与 UA 有关系。
【解决方案】
- 定义变量 model, model 示意用户的手机型号,在 data 对象内增加 model 变量,代码如下图所示:
- 给 model 赋值:在页面的生命周期 onInit() 办法中获取手机型号,代码如下:
1
2
3
4
onInit:
function
() {
const device = require(
`”@system.device”`)
const res = device.getInfoSync();
this
`.model=res.model;`
- 设置 web 组件属性 useragent 值为 Mozilla/5.0 (Linux; Android 9; {{model}}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.116 Mobile Safari/537.36)),如下图所示:
留神: useragent 的值中应用了变量 model,应用变量 model 的作用是获取实在的手机型号,防止有些 H5 网页在验证 useragent 时获取到的手机型号不对,从而给用户带来了困扰。
4. 设置 manifest.json 文件中的 minPlatformVersion 值为 1068。
5. 请确保应用的华为快利用加载器版本为 2.2.0.304 及以上版本。查看加载器版本的形式如左边图所示:
留神:1,2,3,4 步骤实现后,如果登录还有问题,请在 web 上
增加如下代码:
multiwindow=”true”
- H5 利用打包成快利用是海内十分重要的解决方案,在没有 GMS 服务的手机上,仍然能够应用 Google 的服务,比方本案例中的 Google 账号。
- 本案例的解决方案也实用于 H5 快利用其余账号登录的一些问题。
原文链接:https://developer.huawei.com/…
原作者:Mayism
正文完