REQUEST: OPTIONS /resources/l.jsp HTTP/1.1 Host: localhost:18086 Connection: keep-alive Access-Control-Request-Method: POST Origin: http://localhost:8080 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.114 Safari/537.36 Access-Control-Request-Headers: accept, x-requested-with, content-type Accept: */* Referer: http://localhost:8080/static/product/ProductInput.html?wef11ssss Accept-Encoding: gzip,deflate,sdch Accept-Language: zh-CN,zh;q=0.8,en;q=0.6 RESPONSE : HTTP/1.1 200 OK Date: Thu, 16 Oct 2014 09:44:35 GMT Access-Control-Allow-Origin: http://localhost:8080 Access-Control-Allow-Credentials: true Vary: Origin Access-Control-Allow-Methods: POST, GET, OPTIONS, HEAD Access-Control-Allow-Headers: accept, x-requested-with, content-type Content-Length: 0 Server: Jetty(9.3.0.M0)
跨域请求时:浏览器会首先发送一个请求,目标服务返回是否允许访问:
request 会带有:
OPTIONS /resources/l.jsp HTTP/1.1 Access-Control-Request-Method: POST //请求的参数 Origin: http://localhost:8080 //请求来源域 Access-Control-Request-Headers: accept, x-requested-with, content-type //真正请求时
允许 跨域请求则返回:
Access-Control-Allow-Origin: http://localhost:8080 //允许请求的域来源 Access-Control-Allow-Credentials: true Access-Control-Allow-Methods: POST, GET, OPTIONS, HEAD //允许请求的方法 Access-Control-Allow-Headers: accept, x-requested-with, content-type//允许请求时的header
浏览器接到返回数据后,才会发送实际请求。
服务器需要能够处理跨域请求,返回对应的header.
cors-filter 是一个Filter ,参够实现服务端的cors功能。
jar包下载地址:http://software.dzhuvinov.com/cors-filter.html
配置:
web.xml:
<filter> <filter-name>CORS</filter-name> <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class> <init-param> <param-name>cors.supportedMethods</param-name> <param-value>GET, POST, HEAD, PUT, DELETE</param-value> </init-param> <init-param> <param-name>cors.maxAge</param-name> <param-value>3600</param-value><!--单位秒--> </init-param> <init-param> <param-name>cors.exposedHeaders</param-name> <param-value>Content-Range</param-value><!--允许客户端js访问的header--> </init-param> </filter> <filter-mapping> <filter-name>CORS</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
详细配置见:http://software.dzhuvinov.com/cors-filter-configuration.html
相关推荐
总结,Flash 跨域策略文件 crossdomain.xml 是控制 Flash 应用程序跨域访问的关键。正确配置 crossdomain.xml 可以确保数据的安全传输,防止恶意跨域攻击。然而,配置不当可能导致敏感信息泄露或被利用,因此在设置...
cross-request 3.1 YApi 跨域请求 谷歌浏览器
flash跨域crossdomain 设置项使用,直接可用允许全部跨域请求
为了解决Tomcat在IP和端口不同时引发的跨域问题,可以通过编写并配置`crossDomain.xml`文件来实现跨域支持。下面将详细介绍几种常见的配置方式: ##### 1. 允许特定域名访问 在某些情况下,可能只需要允许来自特定...
前端和后端都可以需要,给yapi测试集合的时候使用
使用@CrossOrigin注解解决前后台分离中的跨域问题
Cross Domain will help you to deal with cross domain - CORS problem. This is tool helpful when face with cross domain issue.
使用YApi,在线调取接口时,需要在谷歌浏览器安装插件。解压之后,将cross-request.crx文件拖到谷歌浏览器的扩展程序页面,确认即可。
使用yapi跨域访问,支持chrome浏览器,在chrom浏览器中输入 chrome://extensions/ 打开以后,再打开开发模式,然后将这个zip包直接拖入到扩展程序就行 【注意】 拖入的时候,要把这个zip直接拖入到 扩展程序,最左上...
在Web开发中,跨域(Cross-Origin)是一种常见的安全限制,它阻止浏览器从一个源加载资源到另一个不同的源。这主要是为了防止恶意脚本通过注入来窃取数据。然而,在进行前后端分离或者API调用时,跨域限制可能会成为...
在开发Web应用时,我们经常会遇到“跨域访问”(Cross-Origin Resource Sharing, CORS)的问题。Tomcat作为一款广泛使用的Java Servlet容器,同样会遇到这个问题。跨域是由于浏览器的安全策略,同一源策略(Same-...
标题“jquery wcf cross ,wcf 跨域”表明这个压缩包包含了关于如何使用jQuery调用WCF服务并解决跨域问题的资料。这里我们将深入探讨这个主题。 首先,理解jQuery的AJAX函数在跨域调用中的作用至关重要。jQuery的$....
5. **CORS(Cross-Origin Resource Sharing)**:服务器端设置`Access-Control-Allow-Origin`响应头,允许特定的跨域请求。但这种方法需要服务器端的配合,对于纯客户端的iframe跨域解决方案不适用。 **三、window....
Java CXF Webservice接口在处理Web服务时,可能会遇到跨域问题,...同时,如果项目使用Spring框架,还可以利用`@CrossOrigin`注解进行局部或全局的跨域配置。部署时,确保所有依赖项都已包含,并正确配置了服务器环境。
跨域点单登录源码SSO_cross_domain是一个用于实现单点登录(Single Sign-On, SSO)的项目,主要解决了用户在多个域名之间切换时无需重复登录的问题。在这个项目中,我们将探讨三个核心概念:跨域、点单登录以及SSO。...
7. ** CORS-Policy Image**:对于图片资源,可以通过设置图片的`crossorigin`属性,使浏览器在加载图片时带上适当的凭证信息,从而获取到跨域的资源。 8. **Server-Sent Events(SSE)**:与WebSocket类似,SSE允许...
H5的video标签跨域.HTML的video标签跨域 我们都知道HTML video标签能播放视频 但是如果你的video要播放的是非当前域名下的视频文件,这就要跨域播放视频, 应该如何实现呢?
jQuery跨域调用主要是通过JSONP(JSON with Padding)和CORS(Cross-Origin Resource Sharing)这两种机制来实现的。JSONP是一种非官方的跨域数据交互协议,而CORS是W3C标准,允许服务器声明哪些来源可以访问其资源...