小程序页面传参数怎么加密


小程序页面传参数怎么加密

文章插图

小程序页面传参数加密的案例:
封装了一个url.js工具类,代码:
//构建url
constbuildURL=(url,query={},isSequence=true)=>{
if(!query)returnurl
constjoiner=url.match(/\?/)?'&':'?'
constqueryStr=Object.keys(query)
.map(key=>`${key}=${encodeURIComponent(isSequence?JSON.stringify(query[key]):query[key])}`)
.join('&')
returnurl+joiner+queryStr
}
//解析query对象
constdecodeQuery=(originQuery={},isSequence=true)=>{
constresult={}
if(!originQuery)return{}
returnObject.keys(originQuery).reduce((prev,curr)=>{
result[curr]=decodeURIComponent(originQuery[curr])
if(isSequence){
result[curr]=JSON.parse(result[curr])
}
returnresult
},result)
}
module.exports={
buildURL,
decodeQuery
}传递时加密,大括号里面可以任意添加任何参数,在解密取值时在根据传值取出来 。代码:
leturl=app.urlHelper.buildURL('/pages/laugh/detail/index',{
item:this.data.item
})
wx.navigateTo({
url,
})使用时解密,在页面onLoad方法中,添加代码:
onLoad:function(options){
letitem=app.urlHelper.decodeQuery(options).item
}

【小程序页面传参数怎么加密】

    推荐阅读