Java Spring Restful服务将所有URL重定向到index.html

Java Spring Restful服务将所有URL重定向到index.html,java,angularjs,spring,rest,spring-mvc,Java,Angularjs,Spring,Rest,Spring Mvc,我正在使用Spring和AngularJS构建一个网站。我在本地主机上提供服务:8080/service/* 我希望所有不以/service/开头的URL都被重定向到index.html,这样我就可以在Angular中完成所有路由 因此,如果用户键入任何类似下面的url,Spring会将其发送到index.html localhost:8080/products localhost:8080/products/343848 localhost:8080/contact local

我正在使用Spring和AngularJS构建一个网站。我在本地主机上提供服务:8080/service/*

我希望所有不以/service/开头的URL都被重定向到index.html,这样我就可以在Angular中完成所有路由

因此,如果用户键入任何类似下面的url,Spring会将其发送到index.html

  localhost:8080/products
  localhost:8080/products/343848
  localhost:8080/contact
  localhost:8080/jdfndf
有人能告诉我怎么做吗?我发现这篇帖子基本上是别人在问同样的问题,但他们从来没有得到明确的答案


我不熟悉Spring和AngularJS,但我找不到任何资源来解释这一点

很抱歉误读了您的问题。:)

正如我从评论中看到的,您必须创建一个单页应用程序

要达到预期效果,必须使用ng route、ng view

你必须做类似的事情:

<head>
    <script src="script.js"></script>
</head> 
<body ng-app="single-page-app">
<div ng-controller="Controller">
<div>
<nav>
     <ul>
     <li><a href="#/">Home</a></li>
    <li><a href="#/product/{id}">View product</a></li>
    </ul> 
 </nav>   
</div>
 <br/>
 <div ng-view>
<!--
 This DIV loads templates depending upon route.
 -->
</div>
</div>
</body>
</html>
这只是一个例子。未经测试。

Angular JS能够路由


请仔细阅读本教程,希望您能了解如何做到这一点。

很抱歉误读了您的问题。:)

正如我从评论中看到的,您必须创建一个单页应用程序

要达到预期效果,必须使用ng route、ng view

你必须做类似的事情:

<head>
    <script src="script.js"></script>
</head> 
<body ng-app="single-page-app">
<div ng-controller="Controller">
<div>
<nav>
     <ul>
     <li><a href="#/">Home</a></li>
    <li><a href="#/product/{id}">View product</a></li>
    </ul> 
 </nav>   
</div>
 <br/>
 <div ng-view>
<!--
 This DIV loads templates depending upon route.
 -->
</div>
</div>
</body>
</html>
这只是一个例子。未经测试。

Angular JS能够路由


请仔细阅读本教程,希望您能了解如何做到这一点。

嗨,新用户,我遵循您的所有代码,我的代码设置非常相似,但我仍然缺少这里的关键思想。在顶部,你说“我假设你总是被引导到主页”,不,我不是,这就是我想要做的。我刚将我的更改为使用*.Json作为我的控制器,那么我如何使我的服务器使用index.html,而不管键入的url是什么,除了那些有.Json的url之外?@Justin cross Oh!你是说你需要一个json URL的视图吗?不,我想要任何不包含.json的URL来运行index.html页面。通过从我的数据库返回json,*.json路径可以正常工作,但我不知道如何让每个其他请求运行index.htmlOk。您的意思是除了*.json之外的所有请求都应该转到索引。Html。我说得对吗?你说得对,假设我键入它将使用index.html。现在,我不希望它成为我输入的重定向,但浏览器中的url最终更改为。我希望它使用我的index.html,但仍然在浏览器urlHi NewUser中显示product/4545,我遵循您的所有代码,我的设置非常相似,但我仍然缺少这里的关键思想。在顶部,你说“我假设你总是被引导到主页”,不,我不是,这就是我想要做的。我刚将我的更改为使用*.Json作为我的控制器,那么我如何使我的服务器使用index.html,而不管键入的url是什么,除了那些有.Json的url之外?@Justin cross Oh!你是说你需要一个json URL的视图吗?不,我想要任何不包含.json的URL来运行index.html页面。通过从我的数据库返回json,*.json路径可以正常工作,但我不知道如何让每个其他请求运行index.htmlOk。您的意思是除了*.json之外的所有请求都应该转到索引。Html。我说得对吗?你说得对,假设我键入它将使用index.html。现在,我不希望它成为我输入的重定向,但浏览器中的url最终更改为。我希望它使用我的index.html,但仍在浏览器url中显示product/4545