首页 > 解决方案 > RequestError:只能在 LoggedIn 状态下发出请求,而不能在 SentClientRequest 状态下发出请求

问题描述

此错误消息(标题中的消息)一直困扰着我。通常,它不会出现,但有时当用户登录时,程序会崩溃并出现该错误。

此处的完整错误消息: https ://i.imgur.com/rFZ0bCg.png

我搜索了 Tedious Api 并尝试使用事件 requestCompleted 但未成功。

我的 Node.js

        // Post method of Login
        app.post('/Login', urlencodedParser, (request, response) => {
            DBConnect.Login(request.body.email, request.body.password, connection, (error, results, fields) => {
                if (error) {
                    console.log("Error: Cannot login: " + error);
                    response.send("Error Try again");

                } else {
                    if (results.length > 0) {
                        if (results[0].Email == request.body.email && results[0].Password == (crypto.createHash("SHA256").update(request.body.password).digest("hex"))) {
                            console.log(results[0].ID);
                            response.status(200).send(JSON.stringify(results[0].ID));
                        } else {
                            response.status(401).send("Login failed: wrong userame or password.");
                        }
                    } else {
                        response.status(401).send("Login failed: wrong userame or password.");
                    }
                }
            });
        });

我的登录请求;

let Login = (Email, Password, connection, callback) => {

    var request = new Request('SELECT Email, Password, ID FROM Users WHERE Email=@Email', function (error, rowCount, rows) {
            if (error) {
                console.log("request error: " + error);
            } else {

                results = createResults(rows);
                console.log(results[0]);             
                callback(error, results, null)
            }
        });
    request.addParameter('Email', TYPES.NVarChar, Email);
    connection.execSql(request);

}

I except login system to work, but sometimes it throws me that error.

标签: node.jstedious

解决方案


推荐阅读