import {baseUrl} from "./base";
import store from '@/store'
/**
* 请求的封装
* @param {String} url 请求的接口地址
* @param {String} method 请求的方法
* @param {Object} data 请求的参数
* @param {Object} option 请求头的配置
* @param {Object} reqOption 响应头的配置
*/
const request = (url, method='GET', data={}, option={"Content-Type": "application/json"},reqOption) => {
wx.showLoading({
title: '加载中...',
});
let header = {
//添加token到请求头
"Token":store.state.vuex_token || '',
...option
}
return new Promise((resolve, reject) => {
wx.request({
url: baseUrl + url,
data,
header,
method,
responseType : reqOption,
timeout:1000*5,
success: res => {
// console.log('响应:',res);
wx.hideLoading()
if (res.statusCode === 200) {
//200: 服务端业务处理正常结束
resolve(res.data)
} else {
//其它错误,提示用户错误信息
console.error(res);
reject(res)
if(res.statusCode == 404){
wx.showToast({
title: '数据不存在',
icon:'none'
})
}
}
},
fail: res => {
// console.error(res);
wx.hideLoading()
reject(res)
}
})
})
}
/**
* GET请求
* @param {String} url 请求接口地址
* @param {Object} params 请求参数
* @param {Object} option 请求头的配置
* @param {Object} reqOption 响应头的配置
*/
export const getApi = (url, params, option,reqOption) => request(url, 'GET', params, option,reqOption);
/**
* POST请求
* @param {String} url 请求接口地址
* @param {Object} params 请求参数
* @param {Object} option 请求头的配置
* @param {Object} reqOption 响应头的配置
*/
export const postApi = (url, params, option,reqOption) => request(url, 'POST', params, option,reqOption);
使用方法
//post请求
export const postMethod= params => postApi('请求地址',params)
//get请求
export const getMethod= params => getApi('请求地址',params,{'Content-Type':'application/x-www-form-urlencoded'})