Angularjs 节点/角度应用程序-在角度路由中是否可以使用404代码?

Angularjs 节点/角度应用程序-在角度路由中是否可以使用404代码?,angularjs,node.js,express,Angularjs,Node.js,Express,我只是查看了我的web应用程序上的爬网统计数据,注意到Google爬网程序试图访问不存在的URL,我也没有任何链接,例如: https://www.example.com/-/results/k/Laptop+笔记本/ 及 https://www.example.com/dasdhkjdsa7di3hdd 现在当我查看统计数据时,我看到缓存命中是未命中,这是有意义的,但是状态代码是200,我认为理想情况下应该是404 现在在角度方面,在我的routes文件中,最后我有代码: .otherwise

我只是查看了我的web应用程序上的爬网统计数据,注意到Google爬网程序试图访问不存在的URL,我也没有任何链接,例如:

https://www.example.com/-/results/k/Laptop+笔记本/

https://www.example.com/dasdhkjdsa7di3hdd

现在当我查看统计数据时,我看到缓存命中是未命中,这是有意义的,但是状态代码是200,我认为理想情况下应该是404

现在在角度方面,在我的routes文件中,最后我有代码:

.otherwise(
    {redirectTo:'/'}
  )
所以当这些随机URL被重定向时。但是,如何随附发送404代码

我想知道这是否真的可能,也就是说,我不需要在我的节点服务器端这样做吗。我尝试了以下方法-但是我遇到了一个问题

如果我将res.status(404)代码放在处理HTML5模式url的部分之前,那么一旦显示404错误,如果我返回到工作url(主页除外),它将错误地显示404

如果我将res.status(404)代码放在后面,则角度
将接管,并简单地重定向到
/

app.use(express.static('site'));

//For Angular HTML5Mode Urls
app.get('/*', function(req, res) {
  res.sendFile(__dirname + '/site/index.html')
});

app.use((req,res,next)=>{
 res.status(404).send("Sorry that page doesn't exist!");
});
任何帮助都将不胜感激


谢谢。

为什么不在服务器端执行此操作?因为我需要在前端引导和使用特定的控制器。另外,随着我网站的发展,该节点将如何创建新的页面?