axios全局请求参数设置,请求及返回拦截器的方法

别自制压力,我们没有必要跟着时间走,只需跟着心态和能力走,随缘,尽力,达命,问心无愧,其他的,交给天。

应用场景:

1,每个请求都带上的参数,比如token,时间戳等。

2,对返回的状态进行判断,比如token是否过期

代码如下:

axios.interceptors.request.use(
		config => {
			var xtoken = getXtoken()
			if(xtoken != null){
				config.headers['X-Token'] = xtoken
			}
			if(config.method=='post'){
				config.data = {
					...config.data,
					_t: Date.parse(new Date())/1000,
				}
			}else if(config.method=='get'){
				config.params = {
					_t: Date.parse(new Date())/1000,
					...config.params
				}
			}
			return config
		},function(error){
			return Promise.reject(error)
		}
	)
axios.interceptors.response.use(function (response) {
	// token 已过期,重定向到登录页面
	if (response.data.code == 4){
		localStorage.clear()
		router.replace({
            path: '/signin',
            query: {redirect: router.currentRoute.fullPath}
          })
	}
	return response
}, function (error) {
	// Do something with response error
	return Promise.reject(error)
})

以上这篇axios全局请求参数设置,请求及返回拦截器的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

您可能有感兴趣的文章
layui table 参数设置方法

微信小程序wx.request拦截器使用详解

axios使用拦截器统一处理所有的http请求的方法

微信小程序之页面拦截器的示例代码

详解Angular.js中$http拦截器的介绍及使用