2024-11-08 11:55:23 +08:00
|
|
|
|
import config from "@/config.js"
|
|
|
|
|
|
import useUserStore from '@/stores/useUserStore';
|
2025-03-28 15:19:42 +08:00
|
|
|
|
export function request({
|
2025-10-31 17:24:07 +08:00
|
|
|
|
url,
|
|
|
|
|
|
method = 'GET',
|
|
|
|
|
|
data = {},
|
|
|
|
|
|
load = false,
|
|
|
|
|
|
header = {}
|
2025-03-28 15:19:42 +08:00
|
|
|
|
} = {}) {
|
2024-11-08 11:55:23 +08:00
|
|
|
|
|
2025-10-31 17:24:07 +08:00
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
if (load) {
|
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
|
title: '请稍候',
|
|
|
|
|
|
mask: true
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
let Authorization = ''
|
|
|
|
|
|
if (useUserStore().token) {
|
|
|
|
|
|
Authorization = `${useUserStore().userInfo.token}${useUserStore().token}`
|
|
|
|
|
|
}
|
|
|
|
|
|
uni.request({
|
|
|
|
|
|
url: config.baseUrl + url,
|
|
|
|
|
|
method,
|
|
|
|
|
|
data: data,
|
|
|
|
|
|
header: {
|
|
|
|
|
|
'Authorization': Authorization || '',
|
|
|
|
|
|
},
|
|
|
|
|
|
success: resData => {
|
|
|
|
|
|
// 响应拦截
|
|
|
|
|
|
if (resData.statusCode === 200) {
|
|
|
|
|
|
const {
|
|
|
|
|
|
code,
|
|
|
|
|
|
msg
|
|
|
|
|
|
} = resData.data
|
|
|
|
|
|
if (code === 200) {
|
|
|
|
|
|
resolve(resData.data)
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
uni.showToast({
|
|
|
|
|
|
title: msg,
|
|
|
|
|
|
icon: 'none'
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
if (resData.data?.code === 401 || resData.data?.code === 402) {
|
|
|
|
|
|
useUserStore().logOut()
|
|
|
|
|
|
uni.showToast({
|
|
|
|
|
|
title: '登录过期,请重新登录',
|
|
|
|
|
|
icon: 'none'
|
|
|
|
|
|
})
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
const err = new Error('请求出现异常,请联系工作人员')
|
|
|
|
|
|
err.error = resData
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
},
|
2025-11-04 14:31:37 +08:00
|
|
|
|
fail: err => reject(err) ,
|
2025-10-31 17:24:07 +08:00
|
|
|
|
complete() {
|
|
|
|
|
|
if (load) {
|
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
2024-11-08 11:55:23 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-03-28 15:19:42 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* @param url String,请求的地址,默认:none
|
|
|
|
|
|
* @param data Object,请求的参数,默认:{}
|
|
|
|
|
|
* @param method String,请求的方式,默认:GET
|
|
|
|
|
|
* @param loading Boolean,是否需要loading ,默认:false
|
|
|
|
|
|
* @param header Object,headers,默认:{}
|
|
|
|
|
|
* @returns promise
|
|
|
|
|
|
**/
|
|
|
|
|
|
export function createRequest(url, data = {}, method = 'GET', loading = false, headers = {}) {
|
2025-10-31 17:24:07 +08:00
|
|
|
|
if (loading) {
|
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
|
title: '请稍后',
|
|
|
|
|
|
mask: true
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
let Authorization = ''
|
|
|
|
|
|
if (useUserStore().token) {
|
|
|
|
|
|
Authorization = `${useUserStore().token}`
|
|
|
|
|
|
}
|
2025-03-28 15:19:42 +08:00
|
|
|
|
|
2025-10-31 17:24:07 +08:00
|
|
|
|
const header = headers || {};
|
|
|
|
|
|
header["Authorization"] = encodeURIComponent(Authorization);
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
uni.request({
|
|
|
|
|
|
url: config.baseUrl + url,
|
|
|
|
|
|
method: method,
|
|
|
|
|
|
data: data,
|
|
|
|
|
|
header,
|
|
|
|
|
|
success: resData => {
|
|
|
|
|
|
// 响应拦截
|
|
|
|
|
|
if (resData.statusCode === 200) {
|
|
|
|
|
|
const {
|
|
|
|
|
|
code,
|
|
|
|
|
|
msg
|
|
|
|
|
|
} = resData.data
|
|
|
|
|
|
if (code === 200) {
|
|
|
|
|
|
resolve(resData.data)
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
// 处理业务错误
|
|
|
|
|
|
if (resData.data?.code === 401 || resData.data?.code === 402) {
|
|
|
|
|
|
useUserStore().logOut()
|
|
|
|
|
|
}
|
|
|
|
|
|
// 显示具体的错误信息
|
|
|
|
|
|
const errorMsg = msg || '请求出现异常,请联系工作人员'
|
|
|
|
|
|
uni.showToast({
|
|
|
|
|
|
title: errorMsg,
|
|
|
|
|
|
icon: 'none'
|
|
|
|
|
|
})
|
|
|
|
|
|
const err = new Error(errorMsg)
|
|
|
|
|
|
err.error = resData
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
// HTTP状态码不是200的情况
|
|
|
|
|
|
const err = new Error('网络请求失败,请检查网络连接')
|
|
|
|
|
|
err.error = resData
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
},
|
|
|
|
|
|
fail: (err) => {
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
},
|
|
|
|
|
|
complete: () => {
|
|
|
|
|
|
if (loading) {
|
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
});
|
|
|
|
|
|
})
|
2025-03-28 15:19:42 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export function uploadFile(tempFilePaths, loading = false) {
|
2025-10-31 17:24:07 +08:00
|
|
|
|
if (loading) {
|
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
|
title: '请稍后',
|
|
|
|
|
|
mask: true
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
let Authorization = ''
|
|
|
|
|
|
if (useUserStore().token) {
|
|
|
|
|
|
Authorization = `${useUserStore().token}`
|
|
|
|
|
|
}
|
2025-03-28 15:19:42 +08:00
|
|
|
|
|
2025-10-31 17:24:07 +08:00
|
|
|
|
const header = {};
|
|
|
|
|
|
header["Authorization"] = encodeURIComponent(Authorization);
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
uni.uploadFile({
|
|
|
|
|
|
url: config.baseUrl + '/app/file/upload',
|
|
|
|
|
|
filePath: tempFilePaths,
|
|
|
|
|
|
name: 'file',
|
|
|
|
|
|
header,
|
|
|
|
|
|
success: (uploadFileRes) => {
|
|
|
|
|
|
if (uploadFileRes.statusCode === 200) {
|
|
|
|
|
|
return resolve(uploadFileRes.data)
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
fail: (err) => {
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
},
|
|
|
|
|
|
complete: () => {
|
|
|
|
|
|
if (loading) {
|
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
export function myRequest(url, data = {}, method = 'GET', port = 9100, headers = {}, loading = false) {
|
|
|
|
|
|
let LCBaseUrl = config.LCBaseUrl
|
|
|
|
|
|
if (port != 9100) {
|
|
|
|
|
|
LCBaseUrl = config.LCBaseUrlInner
|
|
|
|
|
|
}
|
|
|
|
|
|
const header = headers || {};
|
|
|
|
|
|
// 上下文
|
|
|
|
|
|
// /jobfair-api/jobfair/public 招聘会
|
|
|
|
|
|
// /dashboard-api/dashboard 用户登录相关
|
|
|
|
|
|
// /dashboard-api 获取验证码、登录
|
|
|
|
|
|
if (loading) {
|
|
|
|
|
|
uni.showLoading({
|
|
|
|
|
|
title: '请稍后',
|
|
|
|
|
|
mask: true
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|
|
|
|
|
|
return new Promise((resolve, reject) => {
|
|
|
|
|
|
uni.request({
|
|
|
|
|
|
url: LCBaseUrl + url,
|
|
|
|
|
|
method: method,
|
|
|
|
|
|
data: data,
|
|
|
|
|
|
header,
|
|
|
|
|
|
success: resData => {
|
|
|
|
|
|
if(url=='/dashboard/auth/heart'){
|
|
|
|
|
|
resolve(resData.data)
|
|
|
|
|
|
return
|
|
|
|
|
|
}else{
|
|
|
|
|
|
// 响应拦截
|
|
|
|
|
|
if (resData.statusCode === 200) {
|
|
|
|
|
|
const {
|
|
|
|
|
|
code,
|
|
|
|
|
|
msg
|
|
|
|
|
|
} = resData.data
|
2025-11-04 14:31:37 +08:00
|
|
|
|
if(resData.data?.code == undefined){
|
|
|
|
|
|
resolve(resData.data)
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
2025-10-31 17:24:07 +08:00
|
|
|
|
if (code === 200) {
|
|
|
|
|
|
resolve(resData.data)
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
// 处理业务错误
|
|
|
|
|
|
if (resData.data?.code === 401 || resData.data?.code === 402) {
|
2025-11-08 16:21:07 +08:00
|
|
|
|
uni.navigateTo({
|
|
|
|
|
|
url:'/packageB/login?flag=nw'
|
|
|
|
|
|
})
|
|
|
|
|
|
// navTo('/packageB/login?flag=nw');
|
2025-10-31 17:24:07 +08:00
|
|
|
|
useUserStore().logOut()
|
2025-11-08 16:21:07 +08:00
|
|
|
|
|
2025-10-31 17:24:07 +08:00
|
|
|
|
}
|
|
|
|
|
|
// 显示具体的错误信息
|
|
|
|
|
|
const errorMsg = msg || '请求出现异常,请联系工作人员'
|
|
|
|
|
|
uni.showToast({
|
|
|
|
|
|
title: errorMsg,
|
|
|
|
|
|
icon: 'none'
|
|
|
|
|
|
})
|
|
|
|
|
|
const err = new Error(errorMsg)
|
|
|
|
|
|
err.error = resData
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
return
|
|
|
|
|
|
}
|
|
|
|
|
|
// HTTP状态码不是200的情况
|
|
|
|
|
|
const err = new Error('网络请求失败,请检查网络连接')
|
|
|
|
|
|
err.error = resData
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
fail: (err) => {
|
|
|
|
|
|
reject(err)
|
|
|
|
|
|
},
|
|
|
|
|
|
complete: () => {
|
|
|
|
|
|
if (loading) {
|
|
|
|
|
|
uni.hideLoading();
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
}
|