收藏
回答

小程序封装Promise去请求数据,可是服务器报错



就报这种错误 我封装的代码如下

onst Config = require('./config.js') //导入自定义配置文件


const http = ({

url = '', //请求地址

param = {}, //请求参数

contentType, //请求头

method = "GET", //请求方式

isPermissions = false //是否认证

} = {}) => {

//设置请求头

let header = {

"content-type": contentType ? contentType : method == 'POST' ? 'application/x-www-form-urlencoded' : 'application/json',

}

if (isPermissions) {

//添加token到header中

header.token = wx.getStorageSync('token')

}

let timeStart = Date.now(); //开始请求时间

return new Promise((resolve, reject) => {

wx.request({

url: getUrl(url),

data: param,

header: header,

method: method,

complete: (res) => {

console.log(`请求地址:${getUrl(url)}`);

console.log(`请求参数:${JSON.stringify(param)}`);

console.log(`耗时${Date.now() - timeStart}ms`);

if (res.statusCode >= 200 && res.statusCode < 300) {

resolve(res)

} else if (res.statusCode === 500) {

console.log(res)

// _login()

reject(res)

} else {

reject(res)

}

}

})

})


}

//获取请求地址

const getUrl = (url) => {

if (url.indexOf('://') == -1) {

url = Config.BaseUrl + url;

}

return url

}


// get方法

const _get = (url, param = {}, isPermissions) => {

return http({

url,

param,

isPermissions

})

}


const _post = (url, param = {}, isPermissions, contentType) => {

return http({

url,

param,

method: 'POST',

isPermissions,

contentType

})

}




}



module.exports = {

_get,

_post

}

我请求的接口是这样的:

const netWorke = require('./utils/network2.js') //network2.js就是封装的Promise请求

netWorke._get('wxorder/GetMerchant', {}, false).then(res => {

console.log(res)

})

有大神能帮帮我不

最后一次编辑于  08-06  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏关注问题回答

9 个回答

  • 思男
    思男
    08-06

    这种错,你得看服务器那边的log,看客户端返回的数据是看不出来的。

    你对比一下有效请求和你封装后的请求头有什么区别,看看能不能发现问题。

    08-06
    赞同
    回复 6
    • 若水盈月
      若水盈月
      08-06
      请求头在封装后没有什么区别啊
      08-06
      赞同
      回复
    • 若水盈月
      若水盈月
      08-06
      在重启服务器iis后又能请求到数据了
      08-06
      赞同
      回复
    • 思男
      思男
      08-06回复若水盈月
      嗯,500这种 只能看服务器,看客户端看不出来什么的。
      08-06
      赞同
      回复
    • 若水盈月
      若水盈月
      08-06
      我不搞后台啊,大佬,这会不会是iis没有配置好啊
      08-06
      赞同
      回复
    • 思男
      思男
      08-06回复若水盈月
      我也不会_(:з」∠)_ 这就超出小程序的范围了。
      08-06
      赞同
      回复
    查看更多(1)
  • 这都申请了
    这都申请了
    08-08

    500一般是后台代码的问题

    08-08
    赞同
    回复 1
    • 若水盈月
      若水盈月
      08-08
      用了,Postman有时候也请求不出来,然后重启iis就又可以了
      08-08
      赞同
      回复