axios请求,axios支持promise,使用then方法接收回调的数据,axios不支持跨域
axios.get('http://xxx.xom') .then(data=>{ 回调成功的操作 } }
jQuery也支持promise如下:
$.ajax({ url: 'http://xxx.com', type: 'get', datatype: 'json', success: function(res){} } //promise写法 $.ajax({ url: 'http://xxx.com', type: 'get', datatype: 'json'}).then(function(res){})
1. 在main.js中将axios挂载到vue原型上,以避免每个组件都需引入axios
import axios from 'axios' vue.prototype.$http = axios
2. 解决每次请求带上协议端口,修改为统一请求路径
axios.default.baseURL = 'http://xxx.com' //以后在发送请求默认将baseurl的路径拼接给路由
跨域配置(vue/cli)
vue.config.js中
devServer: { proxy: { '/api': { target: 'http:cxxxxx',
pathRewrite:{'^/api': ''}
} } }
再次请求时就要以/api为前缀: http:cxxxxx/api/xxxxxxx
修改了配置文件需要重启项目