微信小程序中用于封装网络请求的方法
作者:野牛程序员:2025-01-02 08:32:47小程序阅读 2851
微信小程序中用于封装网络请求的方法
utils/api.js
const app = getApp();
/**
* 封装的网络请求方法
* @param {string} url 请求的 URL
* @param {Object} data 请求的数据
* @param {string} method 请求的方法(默认 GET)
* @returns {Promise} 返回 Promise 对象
*/
const request = (url, data = {}, method = 'GET') => {
return new Promise((resolve, reject) => {
wx.request({
url,
data,
method,
header: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${app.globalData.token}` // 示例:添加授权头
},
success: (res) => {
if (res.statusCode === 200) {
resolve(res.data);
} else {
wx.showToast({
title: `请求错误:${res.statusCode}`,
icon: 'none'
});
reject(res);
}
},
fail: (err) => {
wx.showToast({
title: '网络错误,请检查网络连接',
icon: 'none'
});
reject(err);
}
});
});
};
module.exports = {
request
};说明
功能:
request方法是对wx.request的封装,方便发送 GET 或 POST 请求。默认采用 JSON 格式传递数据,并支持在请求头中添加认证信息。
使用方式:
引入
api.js文件后,通过request(url, data, method)调用。例如:
const { request } = require('../../utils/api.js');
request('https://example.com/api', { key: 'value' }, 'POST')
.then((response) => {
console.log('成功:', response);
})
.catch((error) => {
console.error('失败:', error);
});全局变量:
示例中使用了
app.globalData.token,需要在小程序app.js文件的globalData中初始化token。
如有需要,还可以扩展此文件以支持更多的请求功能,例如超时处理或重试机制。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:葡萄牙波登可犬:古老而灵动的猎手
- 下一篇:php中的date("Y-m-d")函数
