axios跨域问题
最近遇到一个很奇怪的问题,在帮助测试妹子做一个小项目的时候,遇到了一个很棘手的问题,axios请求的时候报404,请求type是options,我当时的第一反应就是跨域问题,果然在console里面还是发现了跨域的错误,但是后台死活不承认是自己的跨域问题,我只好前台改了,好费劲啊
具体方法如下,
1、引入querysring插件,
2、所有的form数据使用这个插件做一次处理,qs.stringfy(data),这样就解决了,
3、但是。。。这种就不是json格式的数据了,这种就是form表单提交了,当然不存在跨域了
仔细想想不对,我当然还是希望用json来交互数据了,经过一番折腾,具体步骤如下
1、搭建koa服务
2、npm install --save koa2-cors
3、var cors = require('koa2-cors'); app.use(cors()); 启动nodejs服务;
4、前端使用json格式的数据发送请求
axios({
url: 'http://localhost:3000/api/products',
data: {
name: 'yanglongfei.com',
test: 'test11'
},
method: 'post'
})
5、ok了,也通过了,axios的跨域数据交互方式告一段落
学而不思则罔,思而不结则殆,结而不看,一事无成