收藏
回答

wx.request发送请求接收不到返回的数据.

wx.request发送请求接收不到返回的数据,是request返回参数有时间限制吗? 用postman发送请求返回的数据得30-40秒之后才能接收到。调短点  数据发送完成后直接结束,不走success,直接结束。这是怎么回事?


formSubmit: function(e) {
   let data = e.detail.value;
   let token = getApp().globalData.token;
   console.log(token);
   // let netId = e.currentTarget.dataset.netId;
   // console.log(netId);
   wx.request({
       url: api.ledctrl,
       header: {
         "Content-Type": 'application/x-www-form-urlencoded'
       },
       method: "POST",
       data: {
         token: token,
         netId: data.netId,
         ziti: data.ziti,
         zihao: data.zihao,
         speed: data.speed,
         style: data.style,
         x: data.x,
         y: data.y,
         wd: data.wd,
         ht: data.ht,
         mess: data.mess
       },
       success:function(res) {
         console.log('aaa:');
         console.log(res.data);
       },
     fail: function () {
       console.log('--------返回数据接收失败-------')
       // fail
     }
     })
     // console.log('form发生了submit事件,携带数据为:', e.detail.value)
 },

渲染层触发form表单进行提交,直接走到fail,我想问一下有没有人遇到这样的问题,这个怎么解决呀?求大神

最后一次编辑于  2018-10-31
回答关注问题邀请回答
收藏

3 个回答

  • 禾店短剧系统
    禾店短剧系统
    2021-06-03

    最简单的是修改wx.request()的请求头中的content-type:这样后台就不需要修改直接可以接收参数了。

    用:application/json;charset=UTF-8

    修改后台:

    @PostMapping("/getsessionId")
    public Object getSessionId(@RequestBody Map<String,String> reqbody) {
        String code = reqbody.get("code");
        return ***;
    }
    1
    2
    3
    4
    5
    

    主要是接收参数时使用@RequestBody,将所有参数都写入map中,使用时直接get即可。



    2021-06-03
    有用 1
    回复
  • 黄牌下场啦
    黄牌下场啦
    2018-10-31

    fail: function (res) {

           console.log('--------返回数据接收失败-------')

                    console.log(res)

           // fail

         }


    打印下 RES 呗


    ----


    西天取经就要到了,你非要买个机票回去干吗




    2018-10-31
    有用
    回复 5
  • SHIELD
    SHIELD
    2018-10-31

    得看后台API如何定义的,不同定义方式会影响前台传参方式。

    2018-10-31
    有用
    回复
登录 后发表内容