赞
踩
common/api目录下创建两个js文件 { apiList.js,api.js }
API列表
- // common/api/apiList.js
- const BASE_URL = 'https://api.example.com'; // 定义 API 的基础域名
-
- const apiList = {
- getData: BASE_URL + '/data',
- postData: BASE_URL + '/postData',
- // 其他接口路径...
- };
-
- module.exports = apiList;
请求封装
- // common/api/api.js
- const apiList = require('./apiList.js');
-
- const request = (url, method, data) => {
- return new Promise((resolve, reject) => {
- wx.request({
- url: apiList[url], // 使用apiList中的接口路径
- method: method,
- data: data,
- header: {
- 'content-type': 'application/json'
- },
- success(res) {
- resolve(res.data);
- },
- fail(err) {
- reject(err);
- }
- })
- })
- }
-
- module.exports = {
- request: request
- };
使用
- // 在需要发送请求的页面或组件中引入api.js
- const api = require('../../common/api/api.js');
-
- // 使用封装的请求函数,传入对应的apiList中的接口名称即可
- api.request('getData', 'GET', { key: value }).then(res => {
- console.log(res);
- // 请求成功的处理逻辑
- }).catch(err => {
- console.log(err);
- // 请求失败的处理逻辑
- });
封装完毕 !
每次发起请求时带上 Code
- const apiList = require('./apiList.js');
-
- // 定义一个函数来获取用户的code
- const getUserCode = () => {
- return new Promise((resolve, reject) => {
- wx.login({
- success: function (res) {
- if (res.code) {
- resolve(res.code);
- } else {
- reject('获取用户code失败');
- }
- },
- fail: function (err) {
- reject(err);
- }
- });
- });
- };
-
- // 修改网络请求函数,在调用时获取用户的code并携带在请求的header中
- const request = (url, method, data) => {
- return getUserCode().then(code => {
- return new Promise((resolve, reject) => {
- wx.request({
- url: apiList[url], // 使用apiList中的接口路径
- method: method,
- data: data,
- header: {
- 'content-type': 'application/json',
- 'X-WX-Code': code // 将code添加到请求的header中
- },
- success(res) {
- resolve(res.data);
- },
- fail(err) {
- reject(err);
- }
- })
- });
- });
- };
-
- module.exports = {
- request: request
- };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。