1. 微信自带网络请求,示例:

      1. wx.request({
      2. url: 'test.php', //仅为示例,并非真实的接口地址
      3. data: {
      4. x: '',
      5. y: ''
      6. },
      7. header: {
      8. 'content-type': 'application/json' // 默认值
      9. },
      10. success (res) {
      11. console.log(res.data)
      12. }
      13. })
    2. 封装 Promise 形式

      1. let ajaxTimes = 0
      2. export const request = (params) => {
      3. let header = { ...params.header } // 解构 参数中的 header
      4. if (params.url.includes('/my/')) { // 判断 需要权限的请求路径
      5. // header['Authorization'] = wx.getStorageSync('token') // token 请求权限
      6. header['Authorization'] ='xxx'
      7. }
      8. ajaxTimes++ // 每发送一次请求,flag +1
      9. wx.showLoading({
      10. title: '加载中···',
      11. mask: true,
      12. })
      13. const baseURL = 'https://api-hmugo-web.itheima.net/api/public/v1'
      14. return new Promise((resolve, reject) => {
      15. wx.request({
      16. ...params,
      17. ...header,
      18. url: baseURL + params.url,
      19. success: (result) => {
      20. resolve(result.data.message)
      21. },
      22. fail: (err) => {
      23. reject(err)
      24. },
      25. complete: () => {
      26. ajaxTimes-- // 每完成一次请求,flag -1
      27. if (ajaxTimes == 0) { // flag == 0 说明所有请求都完成了,此时关闭 loading 图标
      28. wx.hideLoading({})
      29. }
      30. },
      31. })
      32. })
      33. }