微信小程序封裝request方法

(暫時記錄開發中使用的,後面分析其中的思路和用法)promise

在utils文件夾新建文件utils.js,封裝代碼以下:ui

var sendRequest = function (url, method, data = {}, header = {} ) 
    {
    var promise = new Promise(function (resolve, reject){
        wx.request({
          url: url,
          data: data,
          method: method,
          header:header,
          success: function(data) {
            //作一些統一處理操做,例如401驗證
            
            //resolve用於具體調用中
            resolve(data);
          },
          fail: function(data) {
            reject(data);            
          } 
        })
    })

    return promise
}

//導入
module.exports = {
 sendRequest : sendRequest
}

這樣封裝之後,能夠添加一些公共的配置,例如在傳入的 header 加入 token 信息,這樣就再也不須要在每一個 wx.request 中寫重複的代碼了:url

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

應用示例:code

index.js頁面token

//加載util
const utils = require('../utils/util')

utils.sendRequest(your_request_url, 'GET', { user_id: user_id })
      .then(function (response) {
        that.setData({
          likes: response.data.data
        })
      }, function (error) {
        console.log(error);
      })
相關文章
相關標籤/搜索