我正在用nodejs,express和waterline编写一些REST API。如果我检索一条记录并用res.json(post);返回,则其中包含我不想在API中显示的数据(例如ID,关联等)。

有没有办法告诉水线取回哪些田地?如果没有,将发送的内容列入白名单的最佳方法是什么?

最佳答案

吃水线

从水线角度来看,当您从docs检索记录时,可以使用select

// Returns only the field name
Model.find({ where: { age: { '<': 30 } }, select: ['name'] })


您也可以按照@Rodrigo的建议实现toJSON

node.js / lodash

从node.js的角度来看,您还可以使用lodash的pick(),例如docs的示例:

var object = { 'user': 'fred', 'age': 40 };
_.pick(object, 'user');
// → { 'user': 'fred' }

09-20 04:39