uni-app网络请求(项目实战)

新建request.js 复制下面代码

// 全局请求路径,也就是后端的请求基准路径
const BASE_URL = ‘http://172.10.0.1:8080‘
const header = {}
const request = (url=‘‘,method=‘‘,data={}) => {
    header[‘content-type‘] = "application/json;charset=utf-8";
	if(url != ‘/api/auth/login‘){
		header[‘X-Authorization‘] = "Bearer "+uni.getStorageSync(‘token‘);//判断如果不是登录将token加到header里
	}
    return new Promise((resolve,reject) => {
        uni.request({
            method:method,
            url:BASE_URL + url,
            data:data,
            header:header,
            dataType:‘json‘
        }).then((response) => {
            let [error,res] = response;
            // 登录过期
            if(res.data.errorCode == 11||res.data.errorCode == 10){
		uni.clearStorage(‘token‘)
                uni.showToast({
                    title:‘登录过期,请重新登录‘,
                    duration:2000,
		    icon: ‘none‘
                });
            };            
            resolve(res.data);
        }).catch((error) => {
            // let [err,res] = error;
            reject(error);
        });
    });
}
export default request

将resquest挂载到全局

import request from ‘common/request.js‘
Vue.prototype.$request = request

在需要网络请求的页面使用

this.$request(‘url‘,‘GET‘,{
  //请求参数
}).then((res)=>{
  console.log(res)
})

uni-app网络请求(项目实战)

上一篇:Ubuntu linux系统下 su:出现: authentication failure的解决办法


下一篇:sacc scss less