api集中管理

一个程序离不开接口,而要怎么集中管理好程序的接口呢

程序能不能进行二次维护、升级,接口够不够灵活就占很大的部分
一个程序的接口乱放,我相信你不会想再看到这样的程序(看的头痛啊)

第一步封装请求(request.js)
import Interceptor from "./core/interceptor";
import Request from "./index";
import indexConfig from "@/config/index.config"

export const globalInterceptor = {
	request: new Interceptor(),
	response: new Interceptor()
};

export const config = {
	baseURL: indexConfig.baseUrl,
	header: {
		'token': uni.getStorageSync('Token_YunLiJian_Mp'),
		contentType: "application/x-www-form-urlencoded"
		// 'Content-Type': 'application/json'
	}
};

globalInterceptor.request.use(
	config => {
		config.header = {
			'token': uni.getStorageSync('Token_YunLiJian_Mp')
		}
		return config;
	},
	err => {
		console.error("请求失败前拦截", err);
		return false;
	}
);

globalInterceptor.response.use(
	(res, config) => {
		if (res.data.code == 1001 || res.data.code == 1002 || res.data.code == 1003) {
			uni.setStorageSync('Token_YunLiJian_Mp', '')   // 以防数据错误,清除token
			uni.setStorageSync('UserInFo_YunLiJian_Mp', '')  //清空用户数据
			uni.showModal({
				title: '系统提示',
				content: '登录已过期,请重新登录',
				success: function(res) {
					if (res.confirm) {
						uni.switchTab({
							url: `/pages/Home/Home`
						})
					} else if (res.cancel) {
						uni.switchTab({
							url: `/pages/Mimne/Mimne`
						})
					}
				}
			});
			return null
		}
		return res;
	},
	(err, config) => {
		console.error("请求后失败拦截");
		console.error("错误提示: ", err);
		console.error("错误信息: ", config);
		return Promise.reject(err);
	}
);
第二步接口集中管理

在这里插入图片描述
user.js
在这里插入图片描述

第三步导入使用
  1. 导入
    在这里插入图片描述
  2. 使用
    在这里插入图片描述
这样的方式如果后面时间久一点要需要维护项目,或者升级,就可以直接看api文件,简单明了,很快就能了解程序的api和基本结构
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值