Foxx/ArangoDB:你能创建一个符合 JSON API 规范的响应吗?

Foxx/ArangoDB: Can you create a response that adhere to JSON API specification?

我目前正在使用 Foxx 编写一些微服务供 Ember.js 使用。 Ember 数据与 JSON API (http://jsonapi.org) responses. So I tried to serialize the Foxx responses with the json-api-serializer (https://www.npmjs.com/package/json-api-serializer) 配合得很好——但运气不好。我只找到了 forClient 方法,但这只允许我对单个对象的 JSON 表示进行操作,而不是整个响应。所以我的问题是:是否可以用 Foxx/ArangoDB 实现 JSON API?

您可以 return 来自 Foxx 路由的任意响应,因此完全有可能生成 JSON 符合 JSON API.

的响应

但是没有内置的方法可以自动执行此操作。

我在 json-api-serializer 中没有看到任何不适用于 Foxx 的内容,所以我不确定您遇到了什么问题。您应该能够使用 res.json(outputFromSerializer) 简单地 return 输出对象并使用 res.set('content-type', 'application/vnd.api+json').

设置内容类型

如果其他一切都失败了,您可以编写自己的辅助函数来生成 JSON API 期望的样板文件和元数据。