微信公众号第三方登录window.open打开新窗口和url携带http网址参数base64转码传参
·
原文链接:https://dsx2016.com/?p=1109
公众号:大师兄2016
需求场景

微信第三台平台只能绑定一个域名.
当从另一个域名下的系统进行绑定操作时,只能以打开指定域名的方式进行二维码扫码授权.
同时又需要保持当前的访问状态不被影响,所以在pc端使用打开新窗口的方式.
授权成功后需要跳转一个回调地址,打开url的时候retunUrl是网址的参数形式,不论是传参给后端还是新网页,都要进行一次编码转化
新窗口
当前网页加载
window.location.href="https://dsx2016.com"
新窗口加载
window.open("https://dsx2016.com");
base64转码url
当url携带有http网址参数的时候,对url进行base64编码解码
https://dsx2016.com?id=123&returnUrl=https://dsx2016.com/returnPage
字符串转base64
function encode(str){
// 将字符串编码
var encodeStr = encodeURI(str);
// 转化为base64
var base64 = btoa(encodeStr);
return base64;
}
base64转字符串
function decode(base64){
// base64解码
var decodeStr = atob(base64);
// 转字符串
var str = decodeURI(decodeStr);
return str;
}更多推荐
所有评论(0)