一个页面中引入了vue.js 和 zepto.js 用$.ajax() get 方式 dataType json 发起了请求,按照我的理解它并不会产生跨域问题,但是它却报了跨域的错误,将dataType转换位jsonp 没有问题。
而且还有一点单独使用zepto.js 它并不会产生跨域问题。 加上vue.js 就出现了。
这是为什么
一个页面中引入了vue.js 和 zepto.js 用$.ajax() get 方式 dataType json 发起了请求,按照我的理解它并不会产生跨域问题,但是它却报了跨域的错误,将dataType转换位jsonp 没有问题。
而且还有一点单独使用zepto.js 它并不会产生跨域问题。 加上vue.js 就出现了。
这是为什么
1,jsonp应该是利用script标签避免了跨域的问题。
2,解决跨域你首先要理解什么是同源策略
3,协议,域名,端口这三个只要有一个不同就是跨域。解决的方法有很多,我用的是nginx,调用本地文件的时候,配置一下nginx.conf,由于nginx让所有文件都处于http协议,你只需配置使文件处于同一域名和同一端口就可以了
4,ajax只是用来请求后台接口的吧,你不能指望ajax直接给你解决了跨域
5,理解不深,只作参考
9 回答1.7k 阅读✓ 已解决
6 回答1.5k 阅读
3 回答1.4k 阅读✓ 已解决
4 回答1.2k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
3 回答1k 阅读
3 回答1.3k 阅读✓ 已解决
是否跨域要看调用$.ajax()的代码所在的页面url,也就是浏览器地址栏上的网址,和$.ajax()参数里面的url是否是同一个域名,相同端口号。和vue.js无关。