/* * @Author: ch * @Date: 2022-03-17 17:42:32 * @LastEditors: ch * @LastEditTime: 2022-04-02 09:58:14 * @Description: 项目接口请求统一处理器,返回一个需要token和不需要token的请求封装方法 */ import MsbUniRequest from '@/common/plugins/msbUniRequest'; import $store from '@/common/store'; const ENV = 'test'; const BASE_URL = { // 'test' : 'http://39.103.236.147/api', 'test' : '', 'release' : '', 'prod' : '' }; const successIntercept = (response) =>{ if(response.statusCode === 200){ const result = response.data; if(result.code === 'SUCCESS'){ return result.data; } if(result.code === 'TOKEN_EXPIRE'){ uni.navigateTo({url : '/login'}) return result; } return Promise.reject(result); } return response; } const errorIntercept = (error) =>{ return Promise.reject({message:error.errMsg,code:error.statusCode}) } // 不需要token的接口封装 const MsbRequest = new MsbUniRequest(); MsbRequest.baseUrl = BASE_URL[ENV]; MsbRequest.use('request', (option) => { $store.state.token && (option.header = {...option.header, Authorization:$store.state.token}); return option; }) MsbRequest.use('success', successIntercept); MsbRequest.use('error', errorIntercept); export { MsbRequest }