新建request.js文件
/**
* request请求
* @param url 请求地址
* @param method {METHOD} 请求方式
* @param params 请求参数
* @param config 其他参数
*/
const baseUrl = 'http://192.168.80.53:80'; // 接口地址
function request(url, method, params, config) {
const accessToken = uni.getStorageSync('x-access-token');
const tokenType = uni.getStorageSync('tokenType');
if (accessToken && tokenType) {
const bladeAuth = `${tokenType} ${accessToken}`;
config = config ? config : {};
config.header = config.header ? config.header : {};
config.header['jmis-auth'] = bladeAuth;
config.header.Authorization = 'Basic c2FiZXI6c2FiZXJfc2VjcmV0';
config.header.UserId = uni.getStorageSync('userId') ? uni.getStorageSync('userId') : 0;
// config.header['Cookie'] = accessToken
config.header['X-Access-Token'] = accessToken;
}
return new Promise((resolve, reject) => {
uni.request({
url: baseUrl + url,
method: String(method).toUpperCase(),
data: params || {},
header: {
...config.header,
},
success: (res) => {
resolve(res);
},
fail: (err) => {
// console.error(err)
uni.showToast({
title: '数据请求失败!',
icon: 'error',
});
reject(err);
},
});
});
}
export {
request, baseUrl
};
main.js中引入
import { request,baseUrl } from './utils/request.js'; // 请求二次封装
//挂载在为全局变量$http
export function createApp() {
const app = createSSRApp(App)
// app.use(uviewPlus)
app.config.globalProperties.$http = request
app.config.globalProperties.$baseUrl = baseUrl
return {
app
}
}
使用
this.$http('路径', 'GET',参数)
.then((res) => {
})
.catch(() => {
});