当封装 wx.request 方法时,我们可以将其封装成一个通用的函数,方便在整个小程序中进行网络请求。
// utils/request.js /** * 封装微信的request */ function request(url, method, data, header = {}) { return new Promise((resolve, reject) => { wx.request({ url: url, method: method, data: data, header: header, success: (res) => { if (res.statusCode === 200) { resolve(res.data); } else { reject(res); } }, fail: (err) => { reject(err); } }); }); } module.exports = { request: request };
1. 在需要发起网络请求的页面中引入封装的 request 函数:
// pages/index/index.js const { request } = require('../../utils/request'); Page({ // 示例函数,可根据实际需求编写 fetchDataFromServer: function() { let url = 'https://api.example.com/data'; let method = 'GET'; let data = { // 可选:传递需要的参数 }; // 发起网络请求 request(url, method, data) .then(res => { // 请求成功处理逻辑 console.log('请求成功', res); // 更新页面数据等操作 }) .catch(err => { // 请求失败处理逻辑 console.error('请求失败', err); // 错误提示或其他处理 }); } });
2. 注意事项:
在 utils/request.js 文件中定义了一个 request 函数,它接受四个参数:url(请求地址)、method(请求方法)、data(请求数据)和可选的 header(请求头部信息)。
request 函数返回一个 Promise 对象,通过 resolve 和 reject 处理请求成功和失败的情况。
在调用 request 函数时,根据实际需求传入相应的参数,并处理返回的数据或错误信息。