在 IntelliJ 中为 Tomcat 运行 启用 CORS
Enabling CORS for Tomcat running in IntelliJ
我正在构建一个带有 Jersey 后端 API 的 Angular 项目。我 运行 遇到一个问题,我的 Web 应用程序无法使用 IntelliJ 在调试模式下调用 API 运行 和 Tomcat 因为 CORS。如何在 IntelliJ 中访问 Tomcat 实例 运行 的 CORS header 选项。
或者这不是 SPA 用来与后端对话的一般模式吗?我应该用不同的方式来构建我的项目吗?
通过将以下内容添加到我的 web.xml 文件,我能够从 IntelliJ 内部让我的 Tomcat 服务器 运行 接受 CORS 请求。
<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>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
IntelliJ 对我大吼大叫,说它不认识 filter-class。但它编译和运行完美。同样值得注意的是,您绝对应该更改允许来源的参数值,以便在生产中更具限制性。我允许所有来源在这里只是因为我在本地 运行。
我正在构建一个带有 Jersey 后端 API 的 Angular 项目。我 运行 遇到一个问题,我的 Web 应用程序无法使用 IntelliJ 在调试模式下调用 API 运行 和 Tomcat 因为 CORS。如何在 IntelliJ 中访问 Tomcat 实例 运行 的 CORS header 选项。
或者这不是 SPA 用来与后端对话的一般模式吗?我应该用不同的方式来构建我的项目吗?
通过将以下内容添加到我的 web.xml 文件,我能够从 IntelliJ 内部让我的 Tomcat 服务器 运行 接受 CORS 请求。
<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>
</filter>
<filter-mapping>
<filter-name>CorsFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
IntelliJ 对我大吼大叫,说它不认识 filter-class。但它编译和运行完美。同样值得注意的是,您绝对应该更改允许来源的参数值,以便在生产中更具限制性。我允许所有来源在这里只是因为我在本地 运行。