123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- import config from '../config.js';
- const getDomain = (uri, method, type) => {
- let wx_env = config.wx_miniProgram;
- let system = config.system;
- let url = config.serverUrl;
- if (type && type == 'file') return url + `/files` + uri;
- if (type && type == 'integral') return url + `/point/zr/v1/api` + uri;
- if (uri.startsWith('/wechat/api')) return url + uri;
- else {
- if (system.uniPlatform == 'app') {
- return url + `/point/v1/api` + uri;
- } else if (system.uniPlatform == 'mp-weixin') {
- if (wx_env.envVersion == 'develop' || wx_env.envVersion == 'trial') {
- return url + `${config.wx_dev}/point/v1/api` + uri;
- } else if (wx_env.envVersion == 'release') {
- return url + '/point/v1/api' + uri;
- }
- }
- }
- };
- // 获取token
- const getToken = () => {
- try {
- const value = uni.getStorageSync('token');
- if (value) return value;
- } catch {}
- };
- // 获取请求key
- const getRequestKey = (views) => {
- let baseUrl = getDomain('/util/crk');
- return new Promise((resolve, reject) => {
- uni.request({
- url: baseUrl,
- method: 'POST',
- header: {
- views
- },
- success: (res) => {
- if (res.data && res.data.data) resolve(res.data.data);
- else reject();
- },
- fail: (err) => {
- console.error(err)
- reject(err);
- },
- });
- });
- };
- export const requestBase = async (uri, method = 'GET', data, type) => {
- let baseUrl = getDomain(uri, method, type);
- let token = getToken();
- let header = {};
- let views = JSON.stringify({
- uri,
- method
- });
- views = encodeURIComponent(views)
- if (method !== 'GET') {
- let rk = await getRequestKey(views);
- header.rk = rk;
- header.views = views;
- }
- if (token) header.token = token;
- return new Promise((resolve, reject) => {
- uni.request({
- url: baseUrl,
- method: method || 'GET',
- data: data || {},
- header,
- success: (res) => {
- resolve(res.data);
- },
- fail: (err) => {
- console.log(err);
- uni.showToast({
- title: '请求接口失败',
- icon: 'fail',
- });
- reject(err.data);
- },
- });
- });
- };
- export const requestFile = (uri, method, data, type) => {
- let baseUrl = getDomain(uri, method, type);
- return new Promise((resolve, reject) => {
- uni.uploadFile({
- url: baseUrl,
- filePath: data,
- name: method || 'file',
- formData: {},
- success: (res) => {
- let data = JSON.parse(res.data);
- if (data.errcode != '0') {
- return uni.showToast({
- title: data.errmsg,
- icon: 'error',
- });
- }
- resolve(data);
- },
- fail: (err) => {
- let data = JSON.parse(err.data);
- uni.showToast({
- title: '请求接口失败',
- icon: 'fail',
- });
- reject(data);
- },
- });
- });
- };
|