В настоящее время я получаю ошибку SequelizeConnectionError: Bad handshake по пятому запросу, который запрашивает мою базу данных MySQL. Постоянно терпит неудачу на 5-м запросе, который я делаю к серверу.
Я использую nodejs. Код, обрабатывающий запрос на публикацию, выглядит следующим образом:
routes.post('/login', (req, res) => {
var email = req.body.email,
password = req.body.password; models.User.findOne({ where: {email : email} }).then(function(user) {
if(user){
user.validPassword(password).then(result => {
if(result){
res.json({ "result": "Password correct"});
} else {
res.json({ "result": "Password incorrect"});
}
});
} else {
res.json({ "result": "User not found."});
}
});
});
user.validPassword выглядит следующим образом:
User.prototype.validPassword = function(password){
var self = this; return new Promise(function(resolve, reject){
cryptPassword(password, function(err, encrypted) {
resolve(self.password === encrypted);
});
});
}
И Конфигурация для моего Sequelize выглядит следующим образом:
var sequelize = new Sequelize(config.database, config.username, config.password, {
host: config.host,
dialect: config.dialect,
pool: {
max: 100,
min: 0,
idle: 10000,
handleDisconnects: true
}
});
Я попытался удалить пулы, увеличив суммы, проверил, что в MySQL нет ограничения на соединение, убедился, что сертификаты не требуются и переустановил мой MySQL-сервер.
MySQL-сервер работает на VPS Ubuntu 14.04, а не на Azure, поскольку некоторые из предыдущих вопросов были основаны на этом.