用于角度应用的弹簧多重映射

时间:2018-04-20 17:37:34

标签: java spring spring-boot

我看到很多类似的问题,但似乎没有一个答案有效!

因此,在编译了我的angular 4应用程序(创建了一个index.html和一堆.bundle.js文件)后,我将它们放在我的Spring Boot应用程序的静态文件夹中。因此,如果我在端口8000上运行Spring应用程序,我可以在localhost:8000看到我的主页。

现在,我想要做的是,如果我输入localhost:8000 / lite,会转到我的主页。另外,我想要重定向,我希望主页可见,浏览器中的URL为localhost:8000 / lite。

我应该怎么做?如果SO中有工作解决方案,请链接,我将删除此问题。

1 个答案:

答案 0 :(得分:1)

首先,让所有人聚在一起有点困难!因为前端有Angular4路由,后端有Java路由。在您的情况下,只有java是路由。因为/lite不会返回HTML内容。

执行/lite后,您的java服务器将查找/lite的实施,因此您需要发送index.html作为响应的每个HTML 5路由。< / p>

我认为最好的方法是组织:

  1. /api/您的java代码将处理
  2. /resources您拥有的所有前端资源
  3. *发送index.html作为内容回复并让它处理所有内容
  4. 要处理所有请求,请尝试:

    @RequestMapping(value="**",method = RequestMethod.GET)
    public String getAnythingelse(){
        return "redirect:/index.html";
    }