我想知道使用相同的URL提供HTML和JSON响应是否是一个好习惯。
例如,如果我正在构建博客并且我有一个提供最新项目的URL,我会有一个像/ latest这样的URL 我想在角度中使用相同的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响应设置一组单独的端点更好?
答案 0 :(得分:1)
我会为您的支持API创建一个单独的URL模式。
因此,在Angular中,您仍然可以使用网址/latest
,但您将通过/api/latest
等网址提供JSON数据。
这样可以减少混淆,并且允许您轻松地将API与其他内容集成,因为它只返回JSON。