小程序模板网

微信小程序跳转传参数 传对象,wx.request的json数据传输

一:跳转传参数 传对象

分享者:幼年程序猿,原文地址 
一般都是传字符串到下一页,如果要想传对象怎么办呢?

我的解决办法是先将对象转换为json字符串然后到下个页面将json字符串,再转化为对象。如下:

 

  1. let str=JSON.stringify(e.currentTarget.dataset.item);
  2. wx.navigateTo({
  3. url: '../toMybaby/babyDetail/babyDetail?jsonStr='+str,
  4. success: function (res) {
  5. // success
  6. },
  7. fail: function () {
  8. // fail
  9. },
  10. complete: function () {
  11. // complete
  12. }
  13. })
 

  1. onLoad:function(options){
  2. // 生命周期函数--监听页面加载
  3. let item=JSON.parse(options.jsonStr);
  4. this.setData({ward:item});
  5. },
 

二:wx.request的json数据传输

分享者:微风&细雨,原文地址  wx.request使用

代码如下:

 

  1. wx.request({
  2. url: 'https://192.168.191.1:8443/vocation/bbb',
  3. data: {name:"111",password:"123",id:"123"},
  4. method: 'post', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
  5. // header: {}, // 设置请求的 header
  6. // dataType:JSON,//该语句会将服务器端的数据自动转为string类型
  7. success: function(res){
  8. // success
  9.  
  10. console.log("返回数据为:"+res.data.employees[1].firstName);
  11. console.log('submit success');
  12. },
  13. fail: function() {
  14. // fail
  15. console.log('submit fail');
  16. },
  17. complete: function() {
  18. // complete
  19. console.log('submit comlete');
  20. }
  21. })

服务器端的代码:

 

  1.        JSONObject jsonObject = JSONObject.fromObject(getRequestPayload(request));
  2. String name=jsonObject.get("name").toString();
  3. String password=jsonObject.get("password").toString();
  4. String s = "";
  5. response.setContentType("application/json;charset=utf-8");
  6. response.setHeader("Access-Control-Allow-Origin", "*");
  7. System.out.println(name + " " + password);
  8. s = "{\"employees\": [{ \"firstName\":\"John\" , \"lastName\":\"Doe\" },{ \"firstName\":\"Anna\" , \"lastName\":\"Smith\" },{ \"firstName\":\"Peter\" , \"lastName\":\"Jones\" }]}";
  9. response.getWriter().write(s);

数据传送到微信端是[object object]的形式,因此直接可以通过res.data.employees1.firstName获得对象的数据

结果如下: 


本文地址:https://www.eyoucms.com/wxmini/doc/course/21632.html 复制链接 如需定制请联系易优客服咨询:800182392 点击咨询
QQ在线咨询