角色 保存

This commit is contained in:
zhonghua1
2026-01-02 14:40:14 +08:00
parent f004a75483
commit b607a5980c
5 changed files with 185 additions and 86 deletions

View File

@@ -61,6 +61,30 @@ function getToken() {
}
}
/**
* 获取 roleName从本地存储
*/
function getRoleName() {
try {
return uni.getStorageSync('backend-role-name') || ''
} catch (e) {
console.error('获取 roleName 失败:', e)
return ''
}
}
/**
* 获取 scenario从本地存储
*/
function getScenario() {
try {
return uni.getStorageSync('backend-scenario') || ''
} catch (e) {
console.error('获取 scenario 失败:', e)
return ''
}
}
/**
* 统一的请求方法
* @param {Object} options - uni.request 的配置选项
@@ -99,16 +123,29 @@ export function request(options = {}) {
...header
}
// 添加 token如果需要
if (needToken) {
// 每次请求都自动添加 token登录接口除外
// 确保所有后端请求都携带 token 进行身份验证
if (needToken && !isLoginApi(fullUrl)) {
const token = getToken()
if (token) {
// 每次请求都添加 token 到 Authorization header
requestHeader['Authorization'] = `Bearer ${token}`
// 或者使用其他 header 名称,根据后端要求调整
// requestHeader['X-Token'] = token
} else {
// 如果没有 token移除可能存在的旧 Authorization header
delete requestHeader['Authorization']
}
}
// 添加 roleName 和 scenario 到 header从登录响应中获取
const roleName = getRoleName()
if (roleName) {
requestHeader['X-Role-Name'] = roleName
}
const scenario = getScenario()
if (scenario) {
requestHeader['X-Scenario'] = scenario
}
// 处理请求数据
let requestData = { ...data }