const Fly = require("flyio/dist/npm/wx")
const fly = new Fly
Vue.prototype.$http = fly;
fly.interceptors.request.use((request) => {
//给所有请求添加自定义header
if (api.Get('token')) {
request.timeout = 30000,
request.headers = {
"content-type": "application/json",
"cld.stats.page_entry": api.Get('scene'),
"version": store.state.version,
"token": api.Get('token')
}
wx.showLoading({
title: "加载中",
mask: true,
});
return request;
} else {
fly.lock();//锁住请求
return Public.Load().then(res => {
request.timeout = 30000,
request.headers = {
"content-type": "application/json",
"cld.stats.page_entry": api.Get('scene'),
"version": store.state.version,
"token": api.Get('token')
}
wx.showLoading({
title: "加载中",
mask: true,
});
//等待token返回之后在解锁,
fly.unlock();
return request;//继续之前的请求,
})
}
})
fly.interceptors.response.use(
(response) => {
wx.hideLoading();
return response
},
(err) => {
wx.hideLoading();
if (err.status == 0) {
return "网络连接异常"
} else if (err.status == 1) {
return "网络连接超时"
} else if (err.status == 401) {
return "用户未登录"
} else {
if (err.response.data.message) {
return err.response.data.message
} else {
return '请求数据失败,请稍后再试'
}
};
// Do something with response error
}
)
mpvue中,fly请求拦截token
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 是否是跨域请求呢?在网上找到了相关资料(http://www.cnblogs.com/sniper...:OPTI...
- 前言 之前在面试的时候遇到这样的一个问题,那就是如果app中所有的请求都要加入一些参数(例如 版本号、手机号、登录...
- 使用步骤: 1.添加LoggingInterceptor库 (1)切换为project找到app包下的build....