HTML和JSON响应的相同URL

我想知道是否使用相同的URL来提供HTML和JSON响应是一个很好的做法。

例如,如果我正在build立一个博客,我有一个URL提供最新的项目,我会有一个URL /最新我想在我的端点angular度使用相同的URL来检索项目,所以我有以下路由在我的节点实现:

app.get("/latest",function(req,res){ var type = req.header("Accept"); if(type.indexOf("application/json") > -1){ getLatestItems(req,res); } else { res.render("/latest", {user: req.session.username, current: "latest"}); } }); 

我想知道如果这种方法是好的,还是有更好的我的JSON响应有一个单独的端点集?

我会为您的支持API创build一个单独的URL模式。

所以在Angular中,你仍然可以使用/latest的URL路由,但是你将通过URL /api/latest来提供JSON数据。

这将创build更less的混淆,并允许您轻松地将API与其他东西集成,因为它只会返回JSON。