ajax跨域方法

Posted 巷陌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ajax跨域方法相关的知识,希望对你有一定的参考价值。

Ajax跨域

跨域: 网站A去访问网站B的数据

存在的问题: 浏览器有同源策略 (浏览器阻止ajax请求得到的数据在页面上的继续使用)

解决方案: jsonp、cors、服务器代理

jsonp的核心原理

使用script标签的src属性进行跨域请求,得到的结果会被当成js代码来执行

<script src="/login/status"></script>

/login/status 响应的结果:
var isLogin = true;
var userId = "dasdast356532e";

cors的核心原理

CORS:全称为 Cross-originresource sharing,即跨域资源共享,它允许浏览器向跨域服务器发送 Ajax 请求,克服了 Ajax 只能同源使用的限制

核心原理:在服务器端设置中间件,在中间件中设置两个属性:

//在被访问的服务器上设置
//设置可以访问的IP地址
//* 标签所有IP地址都可以访问
'Access-Control-Allow-Origin', '*'
//设置可以访问的方式
'Access-Control-Allow-Methods', 'GET, POST'

服务器代理的核心原理

跨域访问主要是因为浏览器的同源政策导致跨域访问时,服务器响应了数据,但是浏览器因为同源政策不允许使用,所有可以访问自己的服务器,在服务器端访问其他网站的数据,获取到之后在响应给浏览器就可以使用

以上是关于ajax跨域方法的主要内容,如果未能解决你的问题,请参考以下文章

JQuery - Ajax和Tomcat跨域请求问题解决方法!

关于ajax跨域

Ajax的问题(跨域)

jQuery .ajax() 405(不允许的方法)/跨域

ajax跨域问题解决思路

跨域访问方法介绍--使用片段识别符传值