首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >节点Js MsSql服务器异步查询及过程问题

节点Js MsSql服务器异步查询及过程问题
EN

Stack Overflow用户
提问于 2018-10-01 13:46:21
回答 1查看 1.1K关注 0票数 0

我需要一个同步查询和结果。我的功能不是等待数据库响应。Q延迟不起作用。await函数不起作用。promise不起作用。

Used:Patrik (mssql@4.2.1)

这是我的密码:

Api函数代码

代码语言:javascript
复制
app.post('/api/LoginStep1', function (request, response) {
    var Lang = request.query.Lang;
    var Body = request.body;
    var User = JSON.parse(Body.User);
    TResponse = {};
    TResponse = DoLogin(Lang, User);
    response.status(200).send(JSON.stringify(TResponse, null, 3));
});

数据库响应函数

代码语言:javascript
复制
function DoLogin(Lang, User) {
    //var deferred = Q.defer();
    TResponse = {};
    SqlRequest.input('LangCode', sql.NVarChar, Lang);
    SqlRequest.input('UsernameOrMail', sql.NVarChar, User.Mail);
    SqlRequest.output('Status', sql.Int);
    SqlRequest.output('StatusMessage', sql.NVarChar);

    SqlRequest.execute('SpLoginStep1').then(function (response) {

        //console.log(response.recordset);
        TResponse.Status = response.output.Status;
        TResponse.StatusMessage = response.output.StatusMessage;
        //deferred.resolve(response);
        //return deferred.promise;
        //return callback(null, response);

    }).catch(function (e) {
        //return callback(e, null);
        //deferred.resolve(e.status);
        //deferred.reject(e);
        //return deferred.promise;    
    });
    ////return deferred.promise;
}
EN

回答 1

Stack Overflow用户

发布于 2019-07-25 18:05:33

如果我理解您的问题是正确的,您的函数执行将在从数据库获得响应之前结束。

我在您的代码中看不到await关键字。这就是如何在“同步”模式下使用异步函数。

你看过mssql包的mssql吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52592559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档