用vue-axios和axios做跨域处理,用之前封装的axios方法封装的数据接口,在做过跨域处理上应该怎么封装?
请输入代码
**api.js
之前没有做跨域是这样封装的
import axios from 'axios';
let base = '';
export const msgData = params => { return axios.get('http://spider.dcloud.net.cn/api/banner/36kr',{ params: params }); };
index.vue
这样调用的
msgData().then(res => {
console.log(res)
})
.catch(err => {
console.log(err)
})
**跨域处理
现在为了做跨域处理做的
main.js 主页
import axios from 'axios'
import VueAxios from 'vue-axios'
Vue.use(VueAxios, axios)
在配置文件里这样处理
dev: {
env: require('./dev.env'),
port: 8081,
autoOpenBrowser: true,
assetsSubDirectory: 'static',
assetsPublicPath: '/',
proxyTable: {
'/api': {
target: 'https://api.douban.com/v2',
changeOrigin: true,
pathRewrite: {
'^/api': ''
}
}
},
调用 在index.js
this.axios.get('/api/movie/in_theaters').then(res => {
console.log(res)
})
.catch(err => {
console.log(err)
})
请问跨域处理后应该怎么封装,然后在组件里面调用 ?
请问跨域处理后应该怎么封装,然后在组件里面调用 ?就是我第二种应该怎么封装,他有个this,就不好处理