用XMLHttpRequest(jQuery.ajax())访问服务器时,如果返回了标准的302,将要跳到另一个域名下的页面时,会发生跨域错误,FireFox控制台没有提示,Chrome有跨域错误提示。 failHandler里的jqXHR为:readyState=0, status=0,statusText=”error“.
当XMLHttpRequest发送send()请求后,如果status code为301, 302, 303, 307, or 308.
会进行几个判断,其中一条为:如果两个地址同源,那么走标准的同源请求事件规则;否则,进行跨域请求(cross-origin request steps).
原因就是这样了,跳转目标地址还不支持跨域请求,因此这个302跳转会报跨域请求错误。
解决办法是服务器返回200或者4**结果,然后页面自己处理跳转。
参考资料:
http://www.w3.org/TR/XMLHttpRequest/#the-send()-method
相关推荐
NULL 博文链接:https://chun521521.iteye.com/blog/1935516
Ajax通过代理来解决跨域访问获取数据,里面描述了两种跨域访问的解决方法
通过jquery的ajax处理跨域请求的DEMO,代码比较简单,仅供学习参考。
PHP AJAX JSONP实现跨域请求使用范例
可以将book.aa.com用iframe添加到 www.aa.com的某个页面下,在www.aa.com和iframe里面都加上document.domain = "aa.com",这样就可以统一域了,可以实现跨域访问。就和平时同一个域中镶嵌iframe一样,直接调用里面的...
Jquery跨域访问Web服务的demo源码
一个c# ajax跨域的demo,解决c# ajax 跨域的问题
解决ajax跨域问题
Spring Boot 使用 Redis 进行配置 Session 共享(Ajax 跨域) 源码下载。
ajax跨域
ajax跨域调用wcf实例
html通过 ajax jsonp跨域请求接收和传送数据 使用HTML页面与后台跨域交互,获得后台数据或传输数据给后台
解决了在JSP中的AJAX不能跨域访问的问题
本资源主要介绍了AJAX跨域的解决办法,以及解决方案间的比较
AJAX(XMLHttpRequest)进行跨域请求方法详解
怎样实现Ajax 跨域访问的五种方法, 怎样实现Ajax 跨域访问的五种方法
基于ajax方式的跨域请求jsonp的前后台代码
使用jsonp跨域获取json数据。Ajax获取JAVA服务器json数据。
ajax文件上传,跨域上传,html页面来着,下载下来就可以直接使用。 ajax文件上传,跨域上传,html页面来着,下载下来就可以直接使用。