微信小程序wx.request使用post方式传参

需要注意的是method是get方式的时候,header为{"Content-Type": 'application/json'},当method为post时,header为{"Content-Type": "application/x-www-form-urlencoded"}

post方式传递的参数需要转换

1。js中

var util= require( '../../utils/util.js');

page({

loginSubmit: function(e){
console.log(e.detail.value.username),
console.log(util.formatTime),
wx.request({
url: 'http://127.0.01:8000/runxiang_yiyao/Mobile/Index/login',
method: 'post',
data: util.json2Form({
username: e.detail.value.username,
password: e.detail.value.password,
}),

header: {
"Content-Type": "application/x-www-form-urlencoded"
},
success: function (res) {
console.log(util.formatTime)
// console.log(res)
}
})
}

})


2. 在util中定义函数json2Form

function json2Form(json) {
var str = [];
for ( var p in json) {
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(json[p]));
}
return str.join( "&");
}
module.exports.json2Form = json2Form


  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
微信小程序中,使用`wx.request`进行网络请求时,涉及到数据传输安全,特别是在处理敏感信息时,可能需要采用国密(国家密码算法)进行加密和解密。微信提供了相应的API来支持这些操作,具体步骤如下: 1. **引入加密库**: 首先,在你的小程序项目中,需要安装微信提供的`miniprogram-crypto`库,用于国密相关操作。在`pages/index.js`或相关页面的入口文件中,添加: ```javascript const crypto = require('miniprogram-crypto'); ``` 2. **加密和解密**: 使用`crypto.encrypt`方法对数据进行加密,`crypto.decrypt`方法进行解密。例如,假设你想加密一个字符串: ```javascript const originalData = 'your sensitive data'; const encryptedData = crypto.encrypt(originalData, 'your-encryption-key'); ``` 解密时,用相同的密钥: ```javascript const decryptedData = crypto.decrypt(encryptedData, 'your-encryption-key'); ``` 3. **在`wx.request`中应用加密**: 当发送数据到服务器时,可以在发送前加密,接收后解密。示例代码: ```javascript wx.request({ url: 'your-server-url', data: { encryptedData }, // 注意:这里加密Data而不是明文 method: 'POST', header: { 'Content-Type': 'application/json' // 假设你的服务器需要JSON格式的数据 }, success(res) { const serverResponse = res.data; const decryptedResponse = crypto.decrypt(serverResponse, 'your-encryption-key'); // 解析并处理解密后的数据 } }); ``` 同样,服务器也需要支持接收加密数据,并返回解密后的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值