У меня есть сервер Redis, работающий с Node.JS версии 10.4.2.Я использую NPM "Redis" клиент с моим приложением.Я использую следующий код для создания клиента Redis и для проверки подлинности.(Обратите внимание на код, закомментированный ниже, чтобы увидеть, что еще я попробовал):
var redis = require("redis");
// var redisClient = require('redis').createClient(process.env.REDIS_URL || redis);
var redisClient = redis.createClient(
{
port: process.env.REDIS_PORT,
host: process.env.REDIS_URL,
no_ready_check: true,
auth_pass: process.env.REDIS_AUTH
});
/*
// Authenticate with Redis.
redisClient.auth(process.env.REDIS_AUTH, function(err, reply) {
if (err) {
console.error(err);
}
else {
console.log(reply);
}
});
*/
Однако, я всегда получаю ошибку ниже:
ReplyError: ERR invalid password
Когда я использовал код, который комментируетсяЯ не использовал свойство "no_ready_check" во время createClient () .Некоторые факты:
Я трижды проверил значение в process.env.REDIS_AUTH , и оно точно соответствует тому, что находится в моем файле конфигурации сервера Redis для requirepass значение пароля.
I может использовать пароль для успешной аутентификации при тестировании с помощью клиента командной строки Redis ( redis-cli ) поэтому я знаю, что сервер Redis защищен паролем и что пароль работает.
Я знаю, что пароль проходит, потому что когда я использую закомментированный код, я вижуправильный пароль в аргументах, передаваемых функции обратного вызова.
Почему мой пароль не работает с моим кодом Node.JS и как я могу это исправить?Обратите внимание, что пароль был сгенерирован с использованием генератора случайных паролей SSL в Linux.Я упоминаю, что в случае, если это повлияет на что-либо.
ОБНОВЛЕНИЕ : я получил это с помощью намного более короткого пароля в файле конфигурации сервера Redis.Очевидно, пакет Node.JS Redis не любит длинные случайные пароли, сгенерированные утилитой Linux SSL, хотя в этих паролях вообще нет странных символов.Я разместил вопрос на эту тему в репозитории здесь:
https://github.com/NodeRedis/node_redis/issues/1411