You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
	
	
		
		
			
	
    
		
			
				
					
						                                                                                                | 
						 | 
						import Vue from 'vue';var that = new Vue();let sha1 = require("./sha1.min.js");let SparkMD5 = require("./SparkMD5.js"); // 签名加密js文件
function getsign(params) {	let s_data = "";	let keys = [];	for (const key in params) {		if (params.hasOwnProperty(key)) {			const value = params[key];			keys.push(key);		}	}	let arr = [];	keys.sort();	for (let i = 0; i < keys.length; i++) {		let k = keys[i];		let v = params[k];		arr.push(k + '=' + v);	}	s_data = arr.join('&');
	let sign = sha1(SparkMD5.hash(s_data) + 'Leadfyy@123');	params.sign = sign;	return params;}
export default function request(options){	let { url, data, method, showLoading } = options;	if(typeof data === 'undefined'){		data = {};	}		return new Promise((resolve, reject) => {		// 绑定this
		// 获取当前请求来自哪个页面
		let pages = getCurrentPages();		data.create_page = pages[pages.length - 1].route;		// 当前请求时间戳
		if (!data.timestamp) {			data.timestamp = Math.round(new Date().getTime() / 1000);		}		// 当前请求随机数
		if(!data.rand){			data.rand = Math.round(Math.random() * 1000000);		}		// 当前请求来自的平台
		data.platform = 'wxmini';		// #ifdef APP-PLUS
		data.platform = 'app'; // 来自app平台,其他平台写法类似
		// #endif
		// 当前小程序版本号
		// data.version = that.API.VERSION;
		// 获取设备唯一deviceId,如果没有,自动生成一个
		let sysInfo = uni.getSystemInfoSync();		if(typeof sysInfo.deviceId == 'undefined'){			let deviceId = uni.getStorageSync('deviceId');			if(deviceId){				sysInfo.deviceId = deviceId;			}else{				let date_time = String(new Date().getTime());				let md5_deviceId = SparkMD5.hash(date_time);				uni.setStorageSync('deviceId', md5_deviceId);				sysInfo.deviceId = md5_deviceId;			}		}		if (sysInfo) {			data.device_info = JSON.stringify(sysInfo);		}		// 判断传入用户token和id
		let userinfo = uni.getStorageSync('userinfo') || {};		if(userinfo && userinfo.token && !data.token){			data.token = userinfo.token;		}		if(userinfo && userinfo.id && !data.user_id){			data.user_id = userinfo.id;		}				// 获取页面options参数
		let _mergeParam = that._mergeParam;		for (let _keyVar in _mergeParam) {			let _k = _keyVar			if (data[_k]) {				_k = '_' + _k;			}			data[_k] = _mergeParam[_keyVar];		}		// 生成sign
		getsign(data);		console.log(url, data);				let httpData = method == 'get' ? {params: data} : data;		// 发起请求
		uni.$u.http[method](url, httpData).then(res => {			resolve(res);		}).catch(err => {			reject(err);		})	});}
  |