感谢任何帮助。
我在新部署的 Tomcat 8.0.30 上遇到了 CORS 问题。我不断收到下面的错误。我使用 127.0.0.1 作为 API 服务器地址,192.168.1.100 是我的 HTTP 服务器地址。
请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问来源“_http://192.168.1.100:8999”。响应的 HTTP 状态代码为 403。
阅读整个 Tomcat 文档,在 tomcat web.xml 以及项目 web.xml 下添加 cors 过滤器,但这里没有发生任何神奇的事情,仍然出现相同的错误。使用 init-param 尝试了最小和高级,同样的错误。
我使用 Spring 4 作为我的 REST API 框架。项目编码部分还需要配置吗?
以下是我到目前为止已完成的步骤:
有什么建议么?
添加web.xml配置我尝试将cors.allowed.origins更改为*,更改为127.0.0.1,192.168.1.100,全部不起作用,删除凭据和maxage
<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>http://192.168.1.100</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,Authorization</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>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
Run Code Online (Sandbox Code Playgroud)
Vishal建议,将tomcat版本从8.0更改为8.5,仍然是同样的问题 …