node.js - 附加来自不同 API 的响应
问题描述
我的网站有这个 API。我想要做的是从这个控制器函数发送checklist_data
和data
作为单个响应。
我怎样才能做到这一点?
const getNumberOfApprovedCreators = (callback) => {
Pages.find({ status: "ACTIVE" })
.populate("user")
.exec(async (err, data) => {
if (err) return callback(err, 500, null);
else {
for await (page of data) {
let { err, status, checklist_data } = await checklistController.getActions(
page.user
);
}
return callback(null, 200, data);
}
});
};
解决方案
您可以将所有数据收集checklist_data
到一个数组中,然后将该数据和其他数据都放入一个对象中,并使该对象成为您从控制器发送回的对象:
const getNumberOfApprovedCreators = (callback) => {
Pages.find({ status: "ACTIVE" })
.populate("user")
.exec(async (err, data) => {
if (err) {
return callback(err, 500, null);
} else {
const checklist_results = [];
for await (page of data) {
let { err, status, checklist_data } = await checklistController.getActions(
page.user
);
if (err) return callback(err, 500, null);
checklist_results.push(checklist_data);
}
return callback(null, 200, {data, checklist_results});
}
});
};
推荐阅读
- symfony4 - 如何在 Shopware 中使用 restClient 调用带有令牌的 URL?
- python - 在启动时启动 python 脚本 - python 脚本在登录树莓派后运行?
- .htaccess - 重定向链 URL
- docker - docker load - 意外的EOF
- android - 无论 shouldOverrideUrlLoading 返回值如何,都会在 Android 本机应用程序的 WebView 中触发 Window.beforeunload 事件
- .net - Elastic Search 尝试根据其值将非日期归档为日期解析
- java - 这个 try-catch 是如何工作的?
- react-native - 任何导航器都未处理带有有效负载 {"name":"MarketVisit","params":{"category"}} 的操作 'NAVIGATE'
- amazon-sagemaker - SageMaker 无法创建第一个用户
- entity-framework - Databasecontext 被释放 - 自定义(嵌套)服务