收藏
回答

wx.request在开启不校验合法域名、web-view等的选项后,success等回调不执行?

调试基础库版本:2.19.4

在 开启不校验合法域名、web-view(业务域名)、TLS版本以及HTTPS证书 选项后

network观察到请求正常发出,但是success、fail、complete回调均不执行

关闭该选项后,可观察到fail回调正常执行(报域名不在列表中)

请问如何在开发阶段不校验域名的情况下,正确触发wx.request的回调?

谢谢

贴一下代码片段

wx.request({
  data: {
    username'username',
    password'password',
  },
  header: {
    "Content-Type""application/json"
  },
  method"POST",
  responseType"json",
  url"http://192.168.x.x:8080/api/login",
  // 这里的回调不执行,控制台无输出
  // network可看到正常返回,http状态码是200,能看到后端返回的JSON
  success(res) {
    console.log(res)
  },
  // 不执行
  fail(error) {
    console.error(error)
  },
  // 这个也不执行
  complete() {
    console.log("complete")
  }
})

// 控制台唯一的反应就是有如下输出:
[WARN级别] [memory-leak] triggerOnEvent called on a deprecated instance VM8 asdebug.js:1
最后一次编辑于  2021-09-22
回答关注问题邀请回答
收藏

2 个回答

  • Marcos
    Marcos
    2021-09-22
    responseType的值不对,只能是text和arraybuffer,不能是json
    


    整个请求封装的时候,参考的浏览器端的封装代码

    公共参数里面有一个responseType是json,没注意微信小程序上不能是json

    谢谢几位回答的大佬

    2021-09-22
    有用 1
    回复
  • 微喵网络
    微喵网络
    2021-09-22

    network里能看到返回吗?

    2021-09-22
    有用
    回复 4
    • Marcos
      Marcos
      2021-09-22
      能看到返回
      2021-09-22
      回复
    • 微喵网络
      微喵网络
      2021-09-22回复Marcos
      来个代码片段
      2021-09-22
      回复
    • Marcos
      Marcos
      2021-09-22回复微喵网络
      已经编辑添加了片段
      2021-09-22
      回复
    • Marcos
      Marcos
      2021-09-22
      谢谢你 找到原因了 responseType的值不对
      2021-09-22
      回复
登录 后发表内容