打算学习下vue,可是vue-resource做者已经不更新了,而且你们都建议用axios来进行先后端交互,因此就从学习axios开始。前端
可是在使用 axios 的过程当中,本身写的接口居然访问不到,jquery能够访问可是axios不能访问。post也能访问就是axios不能访问。vue
axios.post('test',{}) .then(function (response){ console.log('axios.post:'); console.log(response.data); }) .catch(function (error){ console.log(error); }); axios({ url: 'test', method: 'post', responseType: 'json', // 默认的json data: { //'a': 1, //'b': 2, } }).then(function (response) { console.log('axios:'); console.log(response); console.log(response.data); }).catch(function (error) { console.log(error); }); $.ajax({ type: 'POST', url: 'test', data: {}, success: function(data) { console.log("ajax:"); console.log(data); }, error: function() {} });
能够看到 axios 为null;jquery
单个字符串json没有解析,直接返回的text格式。。。。 ios
@RequestMapping(value="/test") public String test() { return "hello world!"; }
把 responseType: 'json' 改为 responseType: 'text'ajax
便可。json
可是 post 方法 和 jquery 就没有这种烦恼,无论是 text 仍是 json 都能直接判断,多是 responseType 这个属性写死的缘故吧。axios
若是有前端大佬解释下不胜感激。后端