操作系统:安卓
手机型号:小米MIX2、 OPPO K3、一加 7
微信版本:7.0.10
操作步骤:
1、A页面在微信内置浏览器里打开,用户在该页面填写信息,前端会将信息存入sessionStorage
2、A页面跳转到B页面(这里是收银台,负责调用微信支付)
3、在B页面调起微信jsapi支付(WeixinJSBridge.invoke)
letonBridgeReady () => {
WeixinJSBridgeinvoke
'getBrandWCPayRequest',
{
"appId"jsApiReqMapappId, //公众号名称,由商户传入
"timeStamp"jsApiReqMaptimeStamp, //时间戳,自1970年以来的秒数
"nonceStr"jsApiReqMapnonceStr, //随机串
"package"jsApiReqMappackage,
"signType"jsApiReqMapsignType, //微信签名方式:
"paySign"jsApiReqMappaySign//微信签名
},
res=> {
ifreserr_msg=="get_brand_wcpay_request:ok" ) {
if (payResultPageUrl) {
windowlocationreplacepayResultPageUrl
} else {
thisalertShow'没有payResultPageUrl'
this$routerreplace({name:'paySuccess'})
}
}
}
)
}
onBridgeReady()
4、B页面不管是完成微信支付重定向回到A页面还是取消支付返回到A页面,发现A页面的sessionStorage值全部丢失了
其中第3步试过注释掉WeixinJSBridge.invoke调用,重定向回A页面是正常的。怀疑是WeixinJSBridge.invoke的处理问题
此现象仅仅部分安卓机在微信7.0.10出现
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
提供一个链接以供复现:
https://ols.cmrh.com/site-ols/rasx/#/index
视频复现:
1.这个为小米手机在微信旧版7.0.7版本,一切都如此正常,视频如下
2.这个为一加 7手机在微信新版7.0.10版本,信息录入页面跳到收银台页面,调用微信支付(不管确定还是取消),回来信息录入页面,前端sessionStorage缓存的信息就都丢失了,视频如下
也在手机微信上 上传过日志
微信号:zrda27
操作及出现问题时间:2020年01月17日15点09分
日志已上报
烦请大佬们尽快帮忙看下,诚挚感谢
魅族系列手机的系统浏览器也有同样的问题