一、創(chuàng)建config.js(判斷開發(fā)環(huán)境)
if (process.env.NODE_ENV === 'development') {
// 開發(fā)環(huán)境
url_config = 'http://'
} else {
// 生產(chǎn)環(huán)境
url_config = 'http://'
}
export default url_config
二、創(chuàng)建request.js
import urlConfig from './config.js'
import { getToken } from '@/utils/auth.js'
const request = {}
const headers = {}
request.globalRequest = (url, method, data) => {
if (!data) {
data = {}
}
if (getToken()) {
headers['Authorization'] = 'Bearer ' + getToken() || ''
}
console.log(data);
return new Promise((resolve, reject) => {
uni.request({
url: urlConfig + url,
method: method,
data: data,
sslVerify: false,
dataType: 'json',
header: headers,
timeout: 5 * 1000
}).then(res => {
console.log("當(dāng)前接口調(diào)用==: " + urlConfig + url);
const new_data = res[1].data
console.log(new_data)
if (new_data.code && new_data.code == 200) {
resolve(new_data)
} else {
uni.showToast({
title: new_data.msg,
icon: 'none',
duration: 3 * 1000
})
reject(new_data.msg || '請求失敗,請重新嘗試')
}
}).catch(res => {
uni.showModal({
title: '提示',
content: '請求失敗,請重新嘗試',
showCancel: false
})
reject(res.msg || '請求失敗,請重新嘗試')
})
})
}
export default request
auth.js
const TokenKey = ''
export function getToken () {
return uni.getStorageSync(TokenKey)
}
export function setToken (accessToken) {
uni.setStorage({
key: TokenKey,
data: accessToken
})
}
export function removeToken () {
uni.clearStorageSync()
}
三、封裝接口api
/*
* login.js
*/
import request from '@/utils/request.js'
export function login(params) {
return request.globalRequest(`/login`, 'POST', params)
}
四、調(diào)用
import { login } from '@/api/login.js'
login(params).then(res => {
// 成功
}).catch(error => {
// 失敗
})
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。