精华内容
下载资源
问答
  • Tomcat7 CORS(资源跨域) 解决方案一

    千次阅读 2016-05-18 09:17:08
     它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源。而这种访问是被同源策略所禁止的。CORS系统定义了一种浏览器和服务器...

    本文转载自:http://www.360doc.com/content/14/0920/14/7909375_411017244.shtml

    CORS介绍

       它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源。而这种访问是被同源策略所禁止的。CORS系统定义了一种浏览器和服务器交互的方式来确定是否允许跨域请求。 它是一个妥协,有更大的灵活性,但比起简单地允许所有这些的要求来说更加安全。

       而W3C的官方文档目前还是工作草案,但是正在朝着W3C推荐的方向前进。

       简言之,CORS就是为了让AJAX可以实现可控的跨域访问而生的。


    Tomcat下的配置

       下载cors-filter-1.7.jar,java-property-utils-1.9.jar这两个库文件,放到lib目录下。(可在

    http://search.maven.org上查询并下载。)工程项目(如:geoserver)中web.xml中的配置如下:  


       <filter>

           <filter-name>CORS</filter-name>

           <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>

           <init-param>

            <param-name>cors.allowOrigin</param-name>

               <param-value>*</param-value>

           </init-param>

           <init-param>

            <param-name>cors.supportedMethods</param-name>

               <param-value>GET, POST, HEAD, PUT, DELETE</param-value>

           </init-param>

           <init-param>

            <param-name>cors.supportedHeaders</param-name>

               <param-value>Accept, Origin, X-Requested-With, Content-Type, Last-Modified</param-value>

           </init-param>

           <init-param>

               <param-name>cors.exposedHeaders</param-name>

               <param-value>Set-Cookie</param-value>

           </init-param>

           <init-param>

               <param-name>cors.supportsCredentials</param-name>

               <param-value>true</param-value>

           </init-param>

       </filter>


       <filter-mapping>

           <filter-name>CORS</filter-name>

           <url-pattern>/*</url-pattern>

       </filter-mapping>

    展开全文
  • 跨域 CORS Access-Control-Allow-Origin cors-filter-2.6.jar java-property-utils-1.9.1.jar
  • 包括跨域CORS jar包cors-filter-1.7.jar,java-property-utils-1.9.jar,及geoserver(或tomcat)跨域问题解决方案.txt、web - (示例).xml
  • Tomcat配置 在Tomcat7中服务器已经支持了CORS请求,只需要我们在 web.xml 中开启支持即可。 catalina.bat version#Server version: Apache Tomcat/7.0.56#Server built: Sep 26 2014 12:08:24#...... 通过在tomcat...

    前言

    当Web项目中使用API与第三方对接时,从一台服务器尝试访问另一台服务器时通过XMLHttpRequest或者fetch发起的跨域请求在浏览器中是会被拦截的,并会在控制台提示

    Access to fetch at 'http://192.168.1.23:8088/user/add' from origin http://192.168.1.24' has been blocked by CORS policy...

    其中CORS全称"跨域资源共享"(Cross-origin resource sharing),是用来避免浏览器的同源策略拦截跨域请求的问题的。

    72c2f99bba3124d893e14296ec235e24.png

    CORS通过先发送一个OPTIONS类型的HTTP请求到服务器,检查当前发起请求的源是否在服务器中是被认可的跨域请求发起站点,如果是,则在该请求的Response中返回允许该请求访问的头信息,此时浏览器会再次发起正式的数据请求。

    通过在服务器中开启CORS支持,则可方便地进行跨域调用了。

    Tomcat配置

    在Tomcat7中服务器已经支持了CORS请求,只需要我们在 web.xml 中开启支持即可。

    catalina.bat version#Server version: Apache Tomcat/7.0.56#Server built: Sep 26 2014 12:08:24#......

    通过在tomcat的bin目录下运行以上命令则可查看Tomcat的版本

    login.jspCorsFilterorg.apache.catalina.filters.CorsFiltercors.allowed.origins*cors.allowed.methodsPOST,GET,DELETE,OPTIONS,PUTCorsFilter/*

    在web.xml文件中加入 标签并使用默认的CORS实现,需要将该过滤器配置在首位。

    其中cors.allowed.origins表示允许跨域请求的来源,如果仅限特定IP访问则只需要填写对应的IP即可。

    其中cors.allowed.methods表示可以通过CORS使用的方法,此处配置上在RESTful服务中使用得较广泛的请求。

    中的 /* 表示拦截所有的请求。

    浏览器测试

    XMLHTTPRequest 测试

    在我们自己的服务页面打开浏览器的开发者控制台,使用下面的例子进行测试

    var data = {"userId": "1234567"};var url = '192.168.1.23:8088/user/add';var xhr = new XMLHttpRequest();xhr.open('POST', url, true);xhr.setRequestHeader('Content-type', 'application/json'); //(1)xhr.send(JSON.stringify(data));

    fetch 测试

    var data = {"userId": "1234567"};var headers = {Accept: 'application/json',Content-Type: 'application/json' //(1) };var url = '192.168.1.23:8088/user/add';fetch(url, {method: 'POST',headers: headers,body: JSON.stringify(data)});

    上述测试用例中的 (1) 这一行不可省略,如果不写则CORS过滤器会将该请求认定为无效请求导致跨域请求失败。

    后记

    如果需要使用对HTTPS的服务器进行跨域请求,则需要HTTPS服务器需要有可信的SSL证书才能请求成功,否则在提示连接未授权从而无法发起跨域请求。

    前后端分离后的跨域问题可以尝试用这两种方式解决无需修改代码

    搭建一个自动化测试平台,有效提高工作效率和降低沟通成本

    展开全文
  • tomcat接受跨域请求时,需要配置相关filter,此jar包导入lib中,在tomcat的web.xml添加相关内容即可解决tomcat跨域问题
  • 2.经验教训:但凡前端不能够请求到数据以及返回各种乱七八糟代码,都是后端问题,没有做好CORS设置。 3.首先需要下载cors-filter-1.7.jar,java-property-utils-1.9.jar这两个jar包,放入lib目录;后面有链接; 4....

    1.为了这个跨域,老子被抓来通宵

    2.经验教训:但凡前端不能够请求到数据以及返回各种乱七八糟代码,都是后端问题,没有做好CORS设置。

    3.首先需要下载cors-filter-1.7.jar,java-property-utils-1.9.jar这两个jar包,放入lib目录;后面有链接;

    4.conf-web.xml中插入以下代码

    <filter>
    <filter-name>CORS</filter-name>
    <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
    <init-param>
    <param-name>cors.allowOrigin</param-name>
    <param-value>*</param-value>
    </init-param>
    <init-param>
    <param-name>cors.supportedMethods</param-name>
    <param-value>GET, POST, HEAD, PUT, DELETE</param-value>
    </init-param>
    <init-param>
    <param-name>cors.supportedHeaders</param-name>
    <param-value>Accept, Origin, X-Requested-With, Content-Type, Last-Modified</param-value>
    </init-param>
    <init-param>
    <param-name>cors.exposedHeaders</param-name>
    <param-value>Set-Cookie</param-value>
    </init-param>
    <init-param>
    <param-name>cors.supportsCredentials</param-name>
    <param-value>true</param-value>
    </init-param>
    </filter>
     
    <filter-mapping>
    <filter-name>CORS</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>

    5.保存重启tomcat,重启再重启,请求再次请求,如果不行重启电脑,多次操他

    展开全文
  • Tomcat8.0 CORS 跨域 笔记

    2019-10-10 08:58:05
    运行环境 tomcat8.0 在tomcat的conf/web.xml里添加 如下配置 <filter> <filter-name>CorsFilter</filter-name> <filter-class>org.apache.catalina.filters.CorsFilter</filter-...

    运行环境 tomcat8.0

    在tomcat的conf/web.xml里添加 如下配置

    <filter>
      <filter-name>CorsFilter</filter-name>
      <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
      <init-param>
        <param-name>cors.allowed.origins</param-name>
        <param-value>*</param-value>
      </init-param>
      <init-param>
        <param-name>cors.allowed.methods</param-name>
        <param-value>GET,POST,HEAD,OPTIONS,PUT</param-value>
      </init-param>
      <init-param>
        <param-name>cors.allowed.headers</param-name>
        <param-value>Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers</param-value>
      </init-param>
      <init-param>
        <param-name>cors.exposed.headers</param-name>
        <param-value>Access-Control-Allow-Origin,Access-Control-Allow-Credentials</param-value>
      </init-param>
      <init-param>
        <param-name>cors.support.credentials</param-name>
        <param-value>true</param-value>
      </init-param>
      <init-param>
        <param-name>cors.preflight.maxage</param-name>
        <param-value>10</param-value>
      </init-param>
    </filter>
    <filter-mapping>
      <filter-name>CorsFilter</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>

            说明:我是这么配置的,自己做的web项目生效,有些第三方的项目无效。。。

    展开全文
  • Tomcat通过CORS解决跨域问题

    万次阅读 2017-04-20 19:20:52
    如需转载请标明出处:http://blog.csdn.net/itas109... QQ技术交流群:129518033   跨域资源共享( CORS ) 简介: ... 跨域资源共享( CORS )机制允许 Web 应用服务器进行跨域访问控制,从而使跨域数据传输...
  • tomcat应用CORS跨域支持-附件资源
  • tomcatcors跨域解决架包

    热门讨论 2014-08-19 16:17:57
    cors-filter-1.7.jar java-property-utils-1.9.jar
  • tomcat应用CORS跨域支持

    千次阅读 2018-10-19 16:06:07
    本次使用CORS支持跨域,支持cookie传递(用户登录认证) 后台过滤器代码:(借鉴:D:\apache-tomcat-7.0.54\lib\catalina.jar!\org\apache\catalina\filters\CorsFilter.class) jar包下载:...
  • 之前配置过apache作为静态资源的服务器,后因端口问题无法使用,但此时tomcat8的端口可以使用,因此需要通过配置tomcat8作为静态资源服务器,已达成某些静态资源的访问。但配置完成后,可能会涉及跨域访问的问题,...
  • tomcat配置cors实现跨域

    万次阅读 2017-03-22 17:42:35
    Enable CORS on Tomcat : Place under ${tomcat_home}/conf/web.xml   See http://enable-cors.org/server_tomcat.html and http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html#CORS_Filter
  • tomcat cors.rar

    2020-11-06 16:53:55
    tomcat整体配跨域策略:包含cors-filter-2.4.jar、java-property-utils-1.9.1.jar; 此文件也适用于geoserver 2.18 war包版本的跨域。
  • tomcat7.0配置CORS(跨域资源共享)

    万次阅读 2016-04-15 16:05:08
    (原因:CORS 头缺少 'Access-Control-Allow-Origin') 这种情况就是跨域请求被阻止,这样可能会导致当前网站的css、js 、ajax请求、font字体等资源出现无法正常访问的问题,这时就涉及到“跨域资源共...
  • tomcatCORS(跨域资源共享) 的配置

    千次阅读 2016-05-11 10:22:00
    CORS介绍  它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源。而这种访问是被同源策略所禁止的。CORS系统定义了一种...
  • cors-filter java-property-utils ps:版本自选 项目web.xml设置 <!--跨域问题--> <filter> <filter-name>CorsFilter</filter-name> <filter-class>org.apache.catalina.filters.C
  • 直接在项目web.xml添加一filter <filter> <filter-name>CorsFilter</filter-name> <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>...cors.allowed.o
  • 解决Tomcat跨域的两个jar包,java-property-utils-1.9.jar和cors-filter-1.7.jar
  • tomcat跨域cors相关jar包 java-property-utils-1.9.jar,cors-filter-1.7.jar,java-util-1.9.1.jar
  • Tomcat CORS跨域问题

    2020-10-13 14:18:10
    Tomcat安装路径下的bin里加入java-property-utils-1.9.jar和cors-filter-1.7.jar两个jar包 下载地址:https://download.csdn.net/download/qq_40002311/12921263 在conf文件下的web.xml里添加以下代码 <...
  • Tomcat下的配置CORS

    2016-07-26 15:49:53
    Tomcat下的配置“跨域资源共享”,所需要的CORS,cors-filter-1.7.jar,java-property-utils-1.9.jar这两个库文件
  • Tomcat CORS跨域配置

    2019-09-01 15:52:12
    Tomcat CORS跨域配置 Tomcat CORS跨域配置说明官方链接 修改Tomcat的conf目录下的Web.xml,对于所有项目生效 修改项目文件夹WEB-INF下的Web.xml,则只对该项目起作用。 <filter> <filter-name>...
  • Tomcat 8.5.31版本下配置跨域CORS

    千次阅读 2018-08-04 00:02:54
    我把上述代码放到Tomcat 8.5.32版本下的web.xml中,重启Tomcat,控制台报错: 我将allowedOrigins参数去掉,重启也不行,还没找到解决方案,各位大佬,怎么解决这个Tomcat 8.5.32版本下这个问题呢?
  • Tomcat cors.zip

    2019-08-09 11:14:36
    Tomcat配置允许资源跨域访问 cors-filter-2.5.jar java-property-utils-1.9.1.jar
  • tomcat服务器部署后,访问遇到跨域问题,资源包含需要的cors-filter-1.7.jarr和java-property-utils-1.9。测试无误,需要注意的是资源的命名空间为com.thetransactioncompany.cors
  • tomcat中的CORS Filter

    千次阅读 2018-07-06 13:36:05
    本文为tomcat-8.5的CORS Filter的官网翻译。 1 介绍 CORS Filter过滤器是W3C的CORS(跨源资源共享)规范的一种实现,它是跨源请求的机制。 该过滤器的工作原理是将所需的Access-Control- *标头添加到...
  • 设置Tomcat跨域,可以实现前后端分离,这是个已经配置好,下载后解压就可以直接使用的Tomcat。 Download and Install a Java SE Runtime Environment (JRE)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,789
精华内容 1,915
关键字:

tomcat7cors