我已经构建了一个Springboot应用程序,包括Angluar5。我有一个gradle构建脚本,它将角文件加载到我的springboot中,project.The文件在我的springboot项目的project.The下。当我启动我的应用程序时,角的路由不再工作了,我得到
错误:无法匹配任何路由。URL段:“访问”
我的项目结构:

我使用以下语句部署了我的角应用程序:
ng build --deploy-url=BeatAcknowledgeTest op=../后端/src/main/resources/静态
这将使我的静态文件可以访问以下链接:
Www.mySite.com/BeatAcknowledgeTest/.
如果我打字
www.mySite.com/BeatAcknowledgeTest/access
页面呈现,一切都很好,但是当我在另一个组件中时,例如
www.mySite.com/BeatAcknowledgeTest/home
我点击一个按钮,它将我路由到
www.mySite.com/BeatAcknowledgeTest/access
我得到一个错误,我的应用程序没有重定向。
有什么建议吗?
发布于 2018-12-12 10:47:05
我通过在我的应用程序中创建RequestForwardingController来解决这个问题。它将处理所有路由:
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class RequestForwardingController {
@RequestMapping(value = "/**/{[path:[^\\.]*}")
public String redirect() {
// Forward to home page so that angular routing is preserved.
return "forward:/";
}
}它还解决了重新加载URL的问题。在其中,您单击浏览器的重新加载按钮,它将显示Spring引导错误页面。
发布于 2021-02-01 06:18:36
解决这个问题的方法之一是定制MVC配置,这个基于这个答案的文章说明了这一点:https://stackoverflow.com/a/46854105。
https://stackoverflow.com/questions/50001285
复制相似问题