1. 封装api
新建request文件夹
base.js
let baseURL = '';
// 是否在控制台显示接口请求日志,本地环境启用,打包环境禁用
let showHttpLog = false;
baseURL = '/api/';
export default {
baseURL: baseURL,
showHttpLog: showHttpLog
}
http.js
import base from './base.js'; //导入接口的前缀地址
export const myRequest = (options) => {
return new Promise((resolve, reject) => {
uni.request({
url: base.baseURL + options.url, //接口地址:前缀+方法中传入的地址
//url :"/api",
method: options.method || 'GET', //请求方法:传入的方法或者默认是“GET”
data: options.data || {}, //传递参数:传入的参数或者默认传递空集合
headers: {
'Authorization ': window.localStorage.getItem('token') //自定义请求头信息
},
success: (res) => {
//返回的数据(不固定,看后端接口,这里是做了一个判断,如果不为true,用uni.showToast方法提示获取数据失败)
resolve(res)
},
// 这里的接口请求,如果出现问题就输出接口请求失败
fail: (err) => {
console.log(err)
reject(err)
}
})
})
}
2. uniapp实现跨域
根目录下新建vue.config.js
module.exports = {
"devServer": {
"disableHostCheck": true,
"proxy": {
"/api": {
"target": "http://localhost:5235/", //请求的目标域名
"changeOrigin": true,
"secure": false,
"pathRewrite": { //重写的url
"^/api": "/api/v1"
}
}
}
}
}