我想知道使用相同的 URL 提供 HTML 和 JSON 响应是否是一个好习惯。
例如,如果我正在构建一个博客并且我有一个提供最新项目的 URL,我将有一个类似/latest 的 URL 我想对 Angular 端点使用相同的 URL 来检索项目,因此我的 Node 实现中有以下路由:
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 创建一个单独的 URL 模式。
因此,在 Angular 中,您仍然可以拥有 URL 路由 /latest
,但您将通过 /api/latest
这样的 URL 提供 JSON 数据。
这会减少困惑,并且还允许您轻松地将 API 与其他内容集成,因为它只会返回 JSON。
关于angularjs - HTML 和 JSON 响应的 URL 相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27050711/