【问题标题】:Deploy war with Spring boot app and react app in Tomcat使用 Spring Boot 应用程序部署战争并在 Tomcat 中反应应用程序
【发布时间】:2022-02-07 01:46:23
【问题描述】:

我有 Spring Boot 的后端和 React 的前端。我正在尝试将所有内容部署到 Tomcat 9.0.56。

在 Spring Boot 中,我输入了属性:

spring.resources.static-locations=classpath:/build/
spring.thymeleaf.prefix=classpath:/build/

在 package.json 的 react 应用中,我有:

"homepage": "localhost:8080"

然后我构建 react 应用并将其放入文件夹 api/src/main/resources/build

我构建战争并将其部署为 ROOT.war

当我进入应用程序时它不会加载,因为它没有找到 js 和 css,它看起来像 Tomcat 的 CORS 问题:

这只发生在 react 应用程序中,因为如果我放置一个 html 页面,它就可以正常工作。

我尝试在 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>

但它也不起作用。

有什么想法吗?

谢谢!!

【问题讨论】:

    标签: java reactjs spring-boot tomcat


    【解决方案1】:
    "homepage": "."
    

    【讨论】:

    • 一般来说,相对路径是一个不错的选择。
    • 感谢您的回答,但我尝试了,它也不起作用...同样的错误...
    猜你喜欢
    • 2015-10-03
    • 2016-03-23
    • 2015-12-16
    • 2017-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-21
    • 1970-01-01
    相关资源
    最近更新 更多