【发布时间】:2020-10-10 09:37:39
【问题描述】:
我正在使用 imap 对服务器进行用户身份验证。我将 express 用于服务器,https://github.com/mscdex/node-imap 用于 imap。 控制器功能
exports.authenticateUser = async (req, res) => {
let username = req.body.username;
let password = req.body.password;
let imap = new Imap({
user: username,
password: password,
host: HOST_ADDRESS,
port: HOST_PORT
})
imap.once('ready', (e) => {
req.session.user = username;
return res.status(201).json({
success: true,
user: username
});
})
imap.once('error', function (err) {
console.log("err", err);
return res.status(500).json({
success: false,
error: 'Wrong credentials'
});
});
imap.connect();
}
但我的服务器经常停止
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
线路出现错误的原因
return res.status(500).json({
success: false,
error: 'Wrong credentials'
});
【问题讨论】:
-
嗨 Nimish,您找到任何解决方案吗?我面临完全相同的问题,并且无法在特定情况下重现它。我已经针对 NPM 存储库打开了缺陷以寻求帮助。
-
@Rajjy 你能检查一下结束连接是否有帮助吗?