nodejs和angular度路由之间可能的冲突

首先,我有很多使用HTML / CSS和浏览器Javascript(包括AngularJS)的经验,

现在我开始使用NodeJS和Angular(2)。

现在我要发誓 ,不可能省略哈希字符(或任何类似的字符)从客户端路由,因为(我认为)它总是会去服务器路由在这种情况下。

例如:我有一个nodejs express应用程序,它在发送GET /

然后有一个(客户端)Angular应用程序,它有自己的路由没有哈希字符。 因此,例如,当我从客户端应用程序访问/myroute时,它将使用Angular路由来确定应呈现给用户的视图模板。

我不明白 为什么不去服务器确定路线? 另外,如果我直接在浏览器中inputURL(包括/myroute ),它仍然使用Angular进行路由。

当我将服务器端路由添加到/myroute时会发生什么?

我很困惑。

首先是一个基本的答案。 如果这是我们正在寻找的,我将编辑它以使其更好:

你点击里面的应用程序,然后使用locationProvider和HTML5历史APIangular度接pipe导航尝试,并在内部使用Angular路由器

直接使用地址栏浏览意味着浏览器直接从服务器获取页面,angular度不能覆盖。 所以,解决scheme是简单的URL重写。 如果在你的情况下它的节点,你会做一些像app.all()redirect所有请求回你的angular度应用程序所在的索引文件。 然后,客户端路由器从那里接pipe。

是的,如果两个点都存在相同的路由,则需要在服务器上创build一个逻辑来决定是否将控制权恢复为angular度。 简单的解决scheme,我使用的是,所有的服务器路由以/api开头,所以除了/api/*路由都重新回到angular度的起点。