代码之家  ›  专栏  ›  技术社区  ›  Moshe Shaham

我复制实例后CORS不工作

  •  0
  • Moshe Shaham  · 技术社区  · 6 年前

    Access to XMLHttpRequest at 'https://xxxxxx/getConfiguration' from origin 'http://xxxxxx:9000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
    

    我的服务器或前端配置没有任何变化。当我和旧服务器一起工作时,它就工作了。cors过滤器相同:

    <filter>
        <filter-name>CORS</filter-name>
        <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
    
        <init-param>
            <param-name>cors.allowOrigin</param-name>
            <param-value>*</param-value>
        </init-param>
        <init-param>
            <param-name>cors.supportsCredentials</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>cors.allowed.headers</param-name>
            <param-value>Accept, Origin, X-Requested-With, Content-Type, Last-Modified, Access-Control-Request-Method,Access-Control-Request-Headers,authorization</param-value>
        </init-param>
        <init-param>
            <param-name>cors.allowed.methods</param-name>
            <param-value>GET,POST,HEAD,OPTIONS,PUT,DELETE</param-value>
        </init-param>
    </filter>
    
    
    <filter-mapping>
        <filter-name>CORS</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    
    0 回复  |  直到 6 年前
        1
  •  1
  •   Konstantin Kolinko    5 年前

    比较您使用的init参数名

    <init-param>
        <param-name>cors.allowOrigin</param-name>
        <param-value>*</param-value>
    </init-param>
    <init-param>
        <param-name>cors.supportsCredentials</param-name>
        <param-value>false</param-value>
    </init-param>
    

    configuration reference Tomcat7的文档。你拼错了。

    的默认值 cors.allowed.origins 于2018年5月(适用于Tomcat 7.0.89、8.5.32、9.0.9)更改为CVE-2018-8014( bug 62343

        2
  •  0
  •   namthienmenh    5 年前

    您的javascript/html/css是否与旧实例位于同一服务器中?

    您可以看到这个问题,了解如何将CORS头添加到Tomcat中的应用程序中:

    Set CORS header in Tomcat

        3
  •  0
  •   artonbej    5 年前

    我只是使用这些依赖关系,并与所有的方法,邮政,获取等工作。。。

        <dependency>
            <groupId>com.thetransactioncompany</groupId>
            <artifactId>java-property-utils</artifactId>
            <version>1.9.1</version>
        </dependency>
    
        <dependency>
            <groupId>com.thetransactioncompany</groupId>
            <artifactId>cors-filter</artifactId>
            <version>1.9.1</version>
        </dependency>
    

    在下面的web.xml中添加此配置

        <filter>
        <filter-name>CORS</filter-name>
        <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>CORS</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>