手册版本 V6.0
POST 签名验证
那您可以 通过 GraceRequest 的 POST 请求来实现以数据值为基础的签名机制,使数据的交互更加安全;
整个签名过程已经通过内部函数自动实现,您只需要设置 uni.grequest.post() 函数的最后一个参数为 true 即可;
签名原理
step 01. 对 post 全部数据进行排序;
step 02. 组合数据值 + token;
step 03. 对组合结果进行 md5 加密,加密后参与提交;
step 04. 发起 post 请求;
step 05. 后端按照以上步骤进行数据签名并比对;
step 06. 比对成功继续后续逻辑,比对失败返回签名错误;
演示代码
<template>
<gui-page ref="guiPage">
<template v-slot:gBody >
<view>
<text>{{content}}</text>
</view>
</template>
</gui-page>
</template>
<script>
export default{
data() {
return {
content : null,
}
},
onLoad : function(){
this.requestDemo();
},
methods : {
requestDemo : async function(){
// 请求前置函数
uni.gRequest.befor = ()=>{
uni.showLoading({title:'加载中 ...'});
}
// 请求后置函数
uni.gRequest.after = ()=>{
uni.hideLoading();
};
// 请求
try{
// 请求成功
let res = await uni.gRequest.post(
'srequest/postSignValueDemo',
{
// post 数据
data : {
name : "grace",
age : 8
}
},
true
);
console.log(res);
this.content = res;
}catch(e){
// 请求失败
console.log(e);
}
}
}
}
</script>
<style>
</style>