【发布时间】:2020-06-06 11:19:20
【问题描述】:
我一直在研究以找出实现标准 JSONAPI (https://jsonapi.org) 的方法,但我没有找到真实的来源或令人信服的实现方法。
为了在实际示例中表示这一点,我们有以下响应
{
"data": {
"type": "articles",
"id": "1",
"attributes": {
// ... this article's attributes
},
"relationships": {
// ... this article's relationships
}
}
}
所以我们预期的实体是文章,也可能是作者。这些实体存储在数据库(SQL 或 NoSQL)中,并且可以使用任何工具来查询数据(Mongoose、Knex、typeorm..etc)
从数据库返回的预期结果是(从文章中选择第一个)
{
"name":"article1",
"id":"1"
}
问题是处理来自 DB 的响应并将其转换为 JSONAPI 标准的最佳位置在哪里?是模型层吗?控制器?查看或添加表示层?
我一直在考虑一种通过使用模板引擎(pug、Handlebars..etc)来实现这一点的方法,但这是个好主意吗?因为模板引擎目标是 HTML 而不是 JSON?
如果使用模板引擎呈现 JSON 是个好主意,是否有任何可用的 JSON 模板引擎来生成 JSON?
可以查看任何建议或指南或编写良好的示例吗?
谢谢。
【问题讨论】:
-
我想不出你为什么想要一个模板引擎。应该只是
JSON.stringify()。
标签: node.js json express api-design json-api