angular - angular2路由 - 如何从angular PageNotFoundComponent返回状态代码404?

85 0

我的理解是,可以通过设置自定义未找到的页面{ path: '**', component: PageNotFoundComponent }到RouterMoudle.forRoot(routes)。

但是它返回http状态代码200 ,怎么能返回状态码404?

时间: 原作者:

113 4

我想你在这里混合了两个概念:

{ path: '**', component: PageNotFoundComponent }如果你的路由无法解析给定的url,你可以定义应该显示什么组件,请求是在客户端处理的,angular提供了一个定义的组件/页面,因此请求http状态代码是200,因为从来没有出现找不到资源。

服务器无法找到请求的资源时,将出现HTTP 404,因此在这种情况下服务器处理响应,并提供正确的http状态代码。

原作者:
90 3

Angular应用程序只是HTTP客户端,而不是服务器,因此组件不能返回HTTP代码,要PageNotFoundComponent,必须正确地加载应用程序((HTTP 200 ))。

从应用程序的角度来看,没有发生错误,只是用户请求了一个返回到PageNotFoundComponent的路由,它与HTTP没有关系。

原作者:
...