1.ios 微信浏览器访问h5页面,url 不改变
使用vue-router的路由跳转方式,ios用微信浏览器自带的复制链接或者分享功能,始终是第一个进入页面的地址,Android会跟据路由跳转更新地址
使用window.location.herf 的跳转方式,ios和Android 都会更新地址。
出现问题的场景,ios 从微信公众号入口,带上用户信息进入某个h5页面,h5页面中的页面跳转都使用的是vue -router 的跳转方式,导致在h5页面分享或者复制链接,会把用户信息带出去,造成非常大的安全问题。
2.js 屏蔽微信浏览器自带分享功能
function onBridgeReady() {
WeixinJSBridge.call('hideOptionMenu');
}
if (typeof WeixinJSBridge == "undefined") {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
}
} else {
onBridgeReady();
}
3.微信小程序中页面跳转链接中的参数被截断问题
场景:微信小程序跳转h5页面带长参数被截断,微信会截断#后的内容
解决办法:把参数加到#之前
一般传参方式如:http://....#/path?pramas={{pramas}}
改成:http://....?pramas={{pramas}}#/path