| | |
| | | * 请求拦截
|
| | | * @param {Object} http
|
| | | */
|
| | | module.exports = (vm) => { |
| | | // console.log(vm)
|
| | | module.exports = (vm) => {
|
| | | uni.$u.http.interceptors.request.use((config) => { // 可使用async await 做异步操作
|
| | | // 初始化请求拦截器时,会执行此方法,此时data为undefined,赋予默认{} |
| | | console.log('请求拦截');
|
| | | config.data = config.data || {} |
| | | const token = vm.$store.state.token |
| | | if (token) { |
| | | config.header.token = token |
| | | } |
| | | // 可以在此通过vm引用vuex中的变量,具体值在vm.$store.state中
|
| | | // console.log(vm.$store.state);
|
| | |
|
| | | return config
|
| | | }, (config) => // 可使用async await 做异步操作
|
| | | Promise.reject(config))
|
| | | if (vm.$store.state.session) {
|
| | | config.header['Cookie'] = 'eva-auth-token=' + vm.$store.state.session
|
| | | }
|
| | | uni.showLoading({ title: '请求中' });
|
| | | config.data = config.data || {}
|
| | | return config
|
| | | }, (config) => Promise.reject(config)) // 可使用async await 做异步操作
|
| | | } |