不是太会vue,按照搜索到的资料进行代码书写,其中api.js代码如下:
import apibase from '@/common/config.base.js';
import w_md5 from '@/common/w_md5.js';
let apirequest = {}
apirequest.globalRequest = (url, method, data, headers) => {
/* 权限判断 因为有的接口请求头可能需要添加的参数不一样,所以这里做了区分
1 == 不通过access_token校验的接口
2 == 文件下载接口列表
3 == 验证码登录 */
// console.log(data)
if(headers == '')
{
headers = {apiid:apibase.APIID};
}
if(data != '')
{
data['ts'] = Math.round(new Date() / 1000);
var arrdata=[];
for(var key in data){
// console.log(key)
arrdata.push(key)
}
arrdata = arrdata.sort()
// console.log(newData)
var newData={}
var signstring = '';
var sign = '';
for(var i in arrdata){
var itemKey = arrdata[i];
signstring += itemKey+'='+data[itemKey]+'&';
newData[itemKey] = data[itemKey];
}
signstring = signstring.substr(0,signstring.length - 1);
console.log(signstring)
signstring = w_md5.hex_md5_32(signstring);
signstring = signstring+apibase.APIKEY;
sign = w_md5.hex_md5_32(signstring);
newData['sign'] = sign;
}else{
newData = {};
}
// console.log(apibase.APIURL + url)
uni.request({
url: apibase.APIURL + url,
method:method,
data:newData,
header: headers,
success:function(res){
//var json = JSON.parse(res.data);
console.log(res);
if (res.data.code == '0' || res.data.code == 0 || res.data.code == '') {
console.log(res.data);
return res;
} else {
throw res.msg
}
},
fail:function(err){
return err;
}
})
}
export default apirequest
在正常index.vue中import并请求页面请求
onLoad:function(){
var senddata = {};
senddata['zindex'] = '123';
senddata['uid'] = 10001;
senddata['img'] = 'aaa';
var result = {};
result => api.globalRequest('index/index','POST',senddata,'');
console.log(result)
},
我用的这一的方式。
result => api.globalRequest('index/index','POST',senddata,'');
不过result始终是undefined。这里需要怎么调用呢
但是api.js这里我 log的数据却是正常的