前言
微信小程序提供了網絡請求方法博个,但是用起來不太方便,就自己封裝了下。
封裝源碼
// 引用封裝的API
import API from './_api.js'
export default {
/**
* fetch是封裝的請求方法
* 參數(shù):
* url: 接口地址
* data: 參數(shù)
* method: 請求方式
* success: 成功后調用的方法
* fail: 失敗后調用的方法
*/
fetch (url, data, method, success, fail) {
// 請求之前的任務 (loading等)
const accessToken = wx.getStorageSync('userInfo');
wx.request({
url: url,
data: data,
header: {
'content-type': 'application/json; charset=UTF-8',
'Authorization': accessToken.sessionid // 用戶token 信息
},
method: method,
success: function (res) {
// 隱藏loading
success(res);
},
fail: function (res) {
// 隱藏loading
// 提示失敗信息
wx.showToast({
title: '請求失敗',
image: '../assets/img/info.png',
duration: 1500
})
fail(res);
}
})
}
}
引用
import API from '../../utils/_api.js'
import HTTP from '../../utils/_http.js'
let that = this;
HTTP.fetch(API.baseUrl + API.xxx, {
}, 'GET',
function (res) {
// success
that.setData({
// 修改數(shù)據(jù)
})
}, function (res) {
// fail
})
優(yōu)化提示
以上只是簡易版呐能,可以對參數(shù)部分進行優(yōu)化仑氛,傳入一個對象字面量,之后對參數(shù)進行默認處理共耍。
fetch (options) {
// 參數(shù)默認處理
options.url = options.url || '';
options.data = options.data || {};
...
}