微信小程序中用于封装网络请求的方法
作者:野牛程序员:2025-01-02 08:32:47小程序阅读 2323
微信小程序中用于封装网络请求的方法
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")函数