删除无用代码
This commit is contained in:
@@ -1,57 +0,0 @@
|
||||
// 导入uni-app的存储API
|
||||
import { encrypt, decrypt } from './sm2Encrypt.js'
|
||||
|
||||
const TokenKey = 'Admin-Token-tzxmgl'
|
||||
|
||||
export function getToken() {
|
||||
return uni.getStorageSync(TokenKey)
|
||||
}
|
||||
|
||||
export function setToken(token) {
|
||||
uni.removeStorageSync('userName')
|
||||
return uni.setStorageSync(TokenKey, token)
|
||||
}
|
||||
|
||||
export function removeToken() {
|
||||
return clearAllStorage()
|
||||
}
|
||||
|
||||
function clearAllStorage() {
|
||||
// 清除所有相关存储
|
||||
uni.removeStorageSync(TokenKey)
|
||||
uni.removeStorageSync('username')
|
||||
uni.removeStorageSync('password')
|
||||
uni.removeStorageSync('rememberMe')
|
||||
}
|
||||
|
||||
export function removeTokenFather() {
|
||||
return uni.removeStorageSync('Admin-Token')
|
||||
}
|
||||
|
||||
// 保存用户名密码到本地
|
||||
export function saveUserInfo(username, password, rememberMe) {
|
||||
if (rememberMe) {
|
||||
uni.setStorageSync('username', username)
|
||||
uni.setStorageSync('password', encrypt(password)) // 加密存储密码
|
||||
uni.setStorageSync('rememberMe', 'true')
|
||||
} else {
|
||||
removeUserInfo()
|
||||
}
|
||||
}
|
||||
|
||||
// 清除用户信息
|
||||
export function removeUserInfo() {
|
||||
uni.removeStorageSync('username')
|
||||
uni.removeStorageSync('password')
|
||||
uni.removeStorageSync('rememberMe')
|
||||
}
|
||||
|
||||
// 获取用户信息
|
||||
export function getUserInfo() {
|
||||
const password = uni.getStorageSync('password') || ''
|
||||
return {
|
||||
username: uni.getStorageSync('username') || '',
|
||||
password: password ? decrypt(password) : '', // 解密密码
|
||||
rememberMe: uni.getStorageSync('rememberMe') === 'true'
|
||||
}
|
||||
}
|
||||
@@ -1,94 +0,0 @@
|
||||
// 验证码相关API
|
||||
// 注意:这里使用uni.request进行封装,与项目其他API保持一致
|
||||
|
||||
/**
|
||||
* 获取验证图片和token
|
||||
* @param {Object} data - 请求参数,必须包含clientUid和ts
|
||||
*/
|
||||
export function reqGet(data) {
|
||||
// 确保data对象存在
|
||||
const requestData = { ...data };
|
||||
|
||||
// 如果没有提供clientUid,生成一个
|
||||
if (!requestData.clientUid) {
|
||||
requestData.clientUid = 'slider-' + Date.now() + '-' + Math.random().toString(36).substring(2, 15);
|
||||
}
|
||||
|
||||
// 如果没有提供ts,使用当前时间戳
|
||||
if (!requestData.ts) {
|
||||
requestData.ts = Date.now();
|
||||
}
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.request({
|
||||
url: 'http://10.160.0.5:8907/captcha/get',
|
||||
method: 'POST',
|
||||
data: requestData,
|
||||
header: {
|
||||
'Content-Type': 'application/json;charset=utf-8',
|
||||
isToken: false
|
||||
},
|
||||
success: (res) => {
|
||||
// 检查响应是否有效
|
||||
if (res.statusCode === 200 && res.data) {
|
||||
resolve(res.data);
|
||||
} else {
|
||||
reject(new Error('获取验证码图片失败:' + (res.statusCode || '未知错误')));
|
||||
}
|
||||
},
|
||||
fail: (error) => {
|
||||
console.error('验证码API请求失败:', error);
|
||||
reject(new Error('网络请求失败,请检查网络连接'));
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* 滑动或点选验证
|
||||
* @param {Object} data - 验证参数,必须包含clientUid、ts和token
|
||||
*/
|
||||
export function reqCheck(data) {
|
||||
// 确保data对象存在
|
||||
const requestData = { ...data };
|
||||
|
||||
// 如果没有提供ts,使用当前时间戳
|
||||
if (!requestData.ts) {
|
||||
requestData.ts = Date.now();
|
||||
}
|
||||
|
||||
// 验证必要参数
|
||||
if (!requestData.clientUid) {
|
||||
return Promise.reject(new Error('缺少必要参数:clientUid'));
|
||||
}
|
||||
if (!requestData.token) {
|
||||
return Promise.reject(new Error('缺少必要参数:token'));
|
||||
}
|
||||
if (!requestData.pointJson) {
|
||||
return Promise.reject(new Error('缺少必要参数:pointJson'));
|
||||
}
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.request({
|
||||
url: 'http://10.160.0.5:8907/captcha/check',
|
||||
method: 'POST',
|
||||
data: requestData,
|
||||
header: {
|
||||
'Content-Type': 'application/json;charset=utf-8',
|
||||
isToken: false
|
||||
},
|
||||
success: (res) => {
|
||||
// 检查响应是否有效
|
||||
if (res.statusCode === 200 && res.data) {
|
||||
resolve(res.data);
|
||||
} else {
|
||||
reject(new Error('验证码验证失败:' + (res.statusCode || '未知错误')));
|
||||
}
|
||||
},
|
||||
fail: (error) => {
|
||||
console.error('验证码验证请求失败:', error);
|
||||
reject(new Error('网络请求失败,请检查网络连接'));
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
@@ -1,149 +0,0 @@
|
||||
// 导入当前目录下的auth.js,使用更具体的路径以避免混淆
|
||||
import { getToken } from './auth.js';
|
||||
|
||||
// 配置API基础URL
|
||||
const baseURL = 'http://10.160.0.5:8907/'
|
||||
|
||||
// 是否显示重新登录
|
||||
export let isRelogin = { show: false }
|
||||
|
||||
/**
|
||||
* 封装uni.request
|
||||
* @param {Object} options - 请求配置
|
||||
*/
|
||||
export function request(options) {
|
||||
// 显示加载状态
|
||||
if (options.load) {
|
||||
uni.showLoading({
|
||||
title: '请稍候',
|
||||
mask: true
|
||||
})
|
||||
}
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
// 是否需要设置token
|
||||
const isToken = options.headers && options.headers.isToken === false
|
||||
|
||||
// 添加固定的Authorization token
|
||||
if (!isToken) {
|
||||
options.headers = options.headers || {}
|
||||
options.headers['Authorization'] = 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsb2dpblR5cGUiOiJsb2dpbiIsImxvZ2luSWQiOiJzeXNfdXNlcjoxIiwicm5TdHIiOiJsNDRvNmhxckdOOW1XcG1pWlpJcXZ0UXJMdGsyTlFhQSIsInVzZXJJZCI6MX0.K5H-Rpof9oI1CCIEtheEQ96XGAxPWS7tzyjPbXwAXrQ'
|
||||
}
|
||||
|
||||
// 确保URL是字符串类型
|
||||
let url = options.url;
|
||||
console.log("options.url:", url)
|
||||
if (typeof url !== 'string') {
|
||||
console.error('URL must be a string:', url);
|
||||
url = String(url);
|
||||
}
|
||||
|
||||
// 发起请求
|
||||
uni.request({
|
||||
url: baseURL + url,
|
||||
method: options.method || 'GET',
|
||||
data: options.data || {},
|
||||
header: options.headers || {
|
||||
'Content-Type': 'application/json;charset=utf-8'
|
||||
},
|
||||
timeout: options.timeout || 60000,
|
||||
success: (res) => {
|
||||
// 二进制数据直接返回
|
||||
if (res.header['content-type'] && res.header['content-type'].includes('application/octet-stream')) {
|
||||
resolve(res.data)
|
||||
return
|
||||
}
|
||||
|
||||
// 处理状态码
|
||||
const code = res.data.code || 200
|
||||
|
||||
// 401错误处理
|
||||
if (code === 401) {
|
||||
if (!isRelogin.show) {
|
||||
isRelogin.show = true
|
||||
uni.showModal({
|
||||
title: '登录过期',
|
||||
content: '登录状态已过期,是否重新登录?',
|
||||
success: (res) => {
|
||||
isRelogin.show = false
|
||||
if (res.confirm) {
|
||||
// 跳转到登录页面
|
||||
uni.navigateTo({
|
||||
url: '/packageRc/pages/login/login'
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
reject(new Error('登录过期,请重新登录'))
|
||||
return
|
||||
}
|
||||
|
||||
// 其他错误处理
|
||||
if (code !== 200) {
|
||||
uni.showToast({
|
||||
title: res.data.msg || '请求失败',
|
||||
icon: 'none'
|
||||
})
|
||||
reject(res.data)
|
||||
return
|
||||
}
|
||||
|
||||
resolve(res.data)
|
||||
},
|
||||
fail: (error) => {
|
||||
uni.showToast({
|
||||
title: '网络错误,请稍后重试',
|
||||
icon: 'none'
|
||||
})
|
||||
reject(error)
|
||||
},
|
||||
complete: () => {
|
||||
// 隐藏加载状态
|
||||
if (options.load) {
|
||||
uni.hideLoading()
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
// 封装GET请求
|
||||
export function get(config) {
|
||||
if (typeof config === 'string') {
|
||||
// 兼容旧的调用方式: get(url, params, options)
|
||||
const params = arguments[1] || {};
|
||||
const options = arguments[2] || {};
|
||||
return request({
|
||||
url: config,
|
||||
method: 'GET',
|
||||
data: params,
|
||||
...options
|
||||
})
|
||||
}
|
||||
// 支持配置对象的调用方式: get({url, data, ...})
|
||||
return request({
|
||||
method: 'GET',
|
||||
...config
|
||||
})
|
||||
}
|
||||
|
||||
// 封装POST请求
|
||||
export function post(config) {
|
||||
if (typeof config === 'string') {
|
||||
// 兼容旧的调用方式: post(url, data, options)
|
||||
const data = arguments[1] || {};
|
||||
const options = arguments[2] || {};
|
||||
return request({
|
||||
url: config,
|
||||
method: 'POST',
|
||||
data,
|
||||
...options
|
||||
})
|
||||
}
|
||||
// 支持配置对象的调用方式: post({url, data, ...})
|
||||
return request({
|
||||
method: 'POST',
|
||||
...config
|
||||
})
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
// 为了解决"For input string: OG"错误,我们需要确保加密输出格式正确
|
||||
// 这里直接使用最简单的字符串处理方式,避免任何可能的格式问题
|
||||
|
||||
/**
|
||||
* 简化的加密函数,返回简单的字符串,避免base64可能导致的格式问题
|
||||
*/
|
||||
export function encrypt(txt) {
|
||||
try {
|
||||
console.log('使用简单加密:', txt);
|
||||
// 直接返回处理后的字符串,不使用btoa,避免特殊字符问题
|
||||
return encodeURIComponent(txt);
|
||||
} catch (error) {
|
||||
console.error('加密失败:', error);
|
||||
return txt;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 简化的解密函数
|
||||
*/
|
||||
export function decrypt(txt) {
|
||||
try {
|
||||
console.log('使用简单解密:', txt);
|
||||
return decodeURIComponent(txt);
|
||||
} catch (error) {
|
||||
console.error('解密失败:', error);
|
||||
return txt;
|
||||
}
|
||||
}
|
||||
|
||||
// 为了与原始接口保持兼容
|
||||
export function encryptWithKey(text, publicKey) {
|
||||
return encrypt(text);
|
||||
}
|
||||
Reference in New Issue
Block a user