init
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
import { getAction } from './base';
|
||||
|
||||
/**
|
||||
* 获取加密字符串
|
||||
* @returns
|
||||
*/
|
||||
export const getEncryptedString = () => getAction('/sys/getEncryptedString');
|
||||
@@ -0,0 +1,130 @@
|
||||
import config from '../config';
|
||||
|
||||
// 定义token
|
||||
let token = '';
|
||||
// 在登录之后设置token
|
||||
export function setToken(t: string) {
|
||||
token = t;
|
||||
// 可以选择将token保存到缓存中
|
||||
// wx.setStorageSync('token', token)
|
||||
}
|
||||
export function clearToken() {
|
||||
token = '';
|
||||
// wx.setStorageSync('token', '')
|
||||
}
|
||||
|
||||
interface Header {
|
||||
'X-Access-Token': string;
|
||||
}
|
||||
export function request(method: any = 'GET', url: string, data?: any) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const header: Header = { 'X-Access-Token': '' };
|
||||
if (token) {
|
||||
header['X-Access-Token'] = token;
|
||||
} else {
|
||||
header['X-Access-Token'] = wx.getStorageSync('token');
|
||||
}
|
||||
wx.request({
|
||||
method,
|
||||
url: config.baseUrl + url,
|
||||
data,
|
||||
header,
|
||||
success: (res: any) => {
|
||||
console.log(res);
|
||||
if (res.data.code === 200 || res.data.code === 0) {
|
||||
resolve(res.data);
|
||||
} else if (res.data.message.includes('token失效')) {
|
||||
//重新登录
|
||||
wx.removeStorageSync('userInfo');
|
||||
wx.removeStorageSync('token');
|
||||
wx.removeStorageSync('organName');
|
||||
wx.reLaunch({
|
||||
url: '/pages/login/login'
|
||||
});
|
||||
} else {
|
||||
resolve(res.data);
|
||||
wx.showToast({
|
||||
title: res.data.message,
|
||||
icon: 'none'
|
||||
});
|
||||
}
|
||||
},
|
||||
fail: err => {
|
||||
wx.showToast({
|
||||
title: '访问失败,请检查当前的网络',
|
||||
icon: 'none'
|
||||
});
|
||||
console.error('请求错误', err);
|
||||
reject(err);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
export const getAction = (url: string, params?: Object) =>
|
||||
request('GET', generateUrl(url, params));
|
||||
|
||||
export const deleteAction = (url: string, params?: Object) =>
|
||||
request('DELETE', generateUrl(url, params));
|
||||
|
||||
export const postAction = (url: string, data?: Object) =>
|
||||
request('POST', url, data);
|
||||
|
||||
export const putAction = (url: string, data?: Object) =>
|
||||
request('PUT', url, data);
|
||||
|
||||
interface UploadOption {
|
||||
name: string;
|
||||
filePath: string;
|
||||
params?: Object;
|
||||
}
|
||||
export function upload(url: string, option: UploadOption) {
|
||||
const { name = 'file', filePath, params } = option;
|
||||
if (!filePath) throw new Error('filepath-not-found');
|
||||
if (!wx.getStorageSync('token')) throw new Error('请先登录!');
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
const header: any = {
|
||||
'Content-Type': 'multipart/form-data',
|
||||
'X-Access-Token': ''
|
||||
};
|
||||
if (token) {
|
||||
header['X-Access-Token'] = token;
|
||||
} else {
|
||||
header['X-Access-Token'] = wx.getStorageSync('token');
|
||||
}
|
||||
wx.uploadFile({
|
||||
url: config.baseUrl + url,
|
||||
filePath,
|
||||
name,
|
||||
formData: params,
|
||||
header,
|
||||
success: resolve,
|
||||
fail: err => {
|
||||
wx.showToast({
|
||||
title: '上传失败',
|
||||
icon: 'none'
|
||||
});
|
||||
console.error('请求错误', err.errMsg);
|
||||
reject(err);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
const generateUrl = (url: string, params?: any) => {
|
||||
if (!params) return url;
|
||||
|
||||
const keys = Object.keys(params);
|
||||
if (keys.length < 1) return url;
|
||||
|
||||
return (
|
||||
url +
|
||||
keys.reduce((res, it, idx) => {
|
||||
if (typeof params[it] !== 'undefined') {
|
||||
return `${res}${idx > 0 ? '&' : ''}${it}=${params[it]}`;
|
||||
}
|
||||
return res;
|
||||
}, '?')
|
||||
);
|
||||
};
|
||||
Reference in New Issue
Block a user