我正在为我的 rest api 服务器使用 node.js 和 express 框架。
我已经get
使用查询参数创建了路由并使用它们。
但我想制作一个像 facebook graph api 这样的功能,我可以在其中发送带有我的 api 路由的字段,例如
/me?fields=address,birthday,email,domains.limit(10){id,name,url}
我正在考虑从查询参数中获取字段,然后根据 将它们拆分,例如
const fields = req.query.fields;
let fieldsArray = fields.split(',');
但是如何传递子对象属性并从上面示例中的域字段之类的路由中检索它们。
/我?场=地址,生日,电子邮件,domains.limit(10){ID,名称,网址}
如果你像这样使用点符号
/me?fields=address,domains.id,domains.name&dbQueryFilters=domains.limit=10
这可能意味着:
您可以添加/删除此类查询变量,直到它明确传达您的 API 的功能,同时仍然非常基本。保持简单和基本的事物始终符合您的最大利益。
在 nodeJS 端,你可以使用像flat这样的库来解压查询对象:
var fields = flat.unflatten(req.query.fields)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句