节点JS-异步-响应是在执行查询时发送的
Node JS - Async - Response is sent while queries are being executed
我正在使用以下代码执行一些查询集,并发送对查询结果进行验证的响应。对于这个场景,我在NodeJS中使用异步模块。
async.series([
function(callback){
common.commonValidations(db);
callback();
},
function(callback){
console.log('second function');
res.end(JSON.stringify(gErrors));
callback();
}
], function(err){
console.log('sending res to client');
console.log(err);
});
common.commonValidations(db)
函数用于执行一些db2查询。
这里我的问题是,虽然我使用的是异步模块,但在执行查询时,响应会被发送到客户端。根据我对异步模块的理解,数组中的第二个函数在第一个函数完成任务后就会执行。
有人能帮我吗?提前谢谢。
看起来common.commonValidations(db)
是一个异步函数,但您并没有等待它完成。在commonValidations
的答案返回之前,您正在调用callback()
函数。
一个可能的变化可能像
common.commonValidations(db,function(err,data) {
//check error
//process data
//and then
callback()
})
相关文章:
- 未捕获的语法错误:无法在“文档”上执行“查询选择器”
- 在node.js-mysql中执行UPDATE查询不起作用
- onchange选择get value并执行查询,然后在同一页面上显示结果
- AJAX 请求不会在 400 个错误查询上执行失败
- 根据浏览器屏幕大小和媒体查询执行 php 代码
- 只有选中的复选框才能执行进一步的 ajax 查询
- SQLite+Javascript:在每个其他函数中执行多个查询
- 如何使用MongoDB执行具有“hasmany”关联的查询
- mongoose中嵌套查询执行的问题
- 我如何才能实时查看在Postgres上执行的查询
- Firebase-如何在列表查询中执行where项
- 节点.js MySQL 查询执行流程
- Javascript引擎(或其他可嵌入语言),用于类似mongodb的查询执行环境和多线程
- 如何使用PHP / JavaScript从客户端停止SQL查询执行
- 查询执行时间超过超时时发生ExtJS Catch事件
- node.js+用于循环+查询执行
- 如何使webEnumerator.moveNext等待executeQueryAsync查询执行
- 节点.js + 续集 + 查询执行
- 在从CFC返回结果之前,对AJAX查询执行字符串函数
- PHP查询执行无错误,但返回计数0