最近调用第三方链接的时候,传参问题记录
1、流程首先需要获取token;
2、再通过URL拼接传参,在拼接参数的时候,文档不是很清晰,这类对接也比较少,过程比较曲折
因为有个params是对象,需要转换,如下要传示例:
const params = {
"name": "小明",
"age": 18
}
// 首先需要把object改为string
const step1 = JSON.stringify(params)
// 然后encodeURIComponent转码
const step2 = encodeURIComponent(step1)
// 最后base64加密
const step3 = btoa(step2 )
// 最后打开跳转地址,如下示例
window.open(ip + '/list/?ticket=' + token + '&menuid=' + menuid + '¶ms=' + step3 + '&theme=default#/' + page, '_blank', `width=1200,height=660,location=0,menubar=0,toolbar=0,resizable=no`)
之前是丢失了step1,导致那边总是接收不到params传参,因为params直接转码是一个对象,不能对象直接转码,先要转字符串。
当然我们的加密方式多种多样,我们用的是最简单的base64(btoa)