我正在用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' }