生成 package.json
npm init -y
安裝 axios
npm install axios
封裝 axios
//request.js
import axios from "axios";
// uniapp 必須要設置adapter
axios.defaults.adapter = function(config) {
return new Promise((resolve, reject) => {
console.log(config)
var settle = require('axios/lib/core/settle');
var buildURL = require('axios/lib/helpers/buildURL');
uni.request({
method: config.method.toUpperCase(),
url: config.baseURL + buildURL(config.url, config.params, config.paramsSerializer),
header: config.headers,
data: config.data,
dataType: config.dataType,
responseType: config.responseType,
sslVerify: config.sslVerify,
complete: function complete(response) {
response = {
data: response.data,
status: response.statusCode,
errMsg: response.errMsg,
header: response.header,
config: config
};
settle(resolve, reject, response);
}
})
})
}
const env = {
'dev': 'https://xxxxxxx.com',
'test': 'https://xxxxxxx.com',
'beta': 'https://xxxxxxx.com',
'prod': 'https://xxxxxxx.com',
}
const baseUrl = env.test
let request = axios.create({
baseURL: baseUrl,
timeout: 10000, //設置超時時間
})
//請求攔截
request.interceptors.request.use(
function(config) {
// console.log("請求之前的配置項:", config);
return config;
},
function(error) {
return Promise.reject(error);
}
)
//響應攔截器
request.interceptors.response.use(
function(response) {
// console.log("響應攔截器響應的數(shù)據(jù),", response);
return response.data;
},
function(error) {
return Promise.reject(error);
}
);
export default request; //把request暴露出去
api.js
import request from '@/utils/request.js'
const testPostUrl = 'xxxx'
const testGetUrl = 'xxxx'
export function testPost(data) {
return request({
url: testPostUrl,
method: 'POST',
data: data
})
}
export function testGet(data) {
return request({
url: testGetUrl,
method: 'GET',
params: data
})
}
調(diào)用
import { testPost, testGet } from '@/api/api.js'
export default {
name: 'axios',
data() {
return {}
},
methods: {
async testGetFunction() {
const data = await testGet()
console.log(data);
},
getUserApproveListFun() {
const params = {}
getUserApproveList(params).then(data => {
console.log(data);
})
},
}
}
最后編輯于 :
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。