Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

1.1K
Vistas
Redis: ERR número incorrecto de argumentos para el comando 'auth'

Estoy usando redis con nodejs. Versión: "redis": "^3.1.2"

Cuando mi servidor se conecta a redis, aparece el siguiente error:

 ERR wrong number of arguments for 'auth' command

Supongo que tiene algo que ver con la URL, que se ve así:

 redis://h:<password>@<url>:<port>

Mi redis está alojado en Heroku y no puedo cambiar la URL. Y no tengo idea de cómo puedo hacer que funcione. Cualquier idea/solución muy apreciada.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

La versión de Redis < 6.0.0 y node-redis >=3.1.0 , redis://h:<password>@<url>:<port> no funcionará y generará ERR wrong number of arguments for 'auth' command .

Solución: redis://<password>@<url>:<port> funciona, es decir: elimine el nombre de usuario de la URL .

Esto debería solucionar el problema al que te enfrentas.

Para otras versiones:

Versión de Redis <6.0.0 y node-redis <=3.0.2, redis://h:<password>@<url>:<port> funciona.

Versión de Redis >= 6.0.0 y node-redis (cualquier versión), tanto redis://<username>:<password>@<url>:<port> (cuando el nombre de usuario en redis ACL está configurado como nombre de usuario personalizado) y redis://<password>@<url>:<port> funcionará.

La razón es:

  • node-redis realizó los cambios para admitir Redis-6, según la nota de publicación .

  • Redis-6 admite el nombre de usuario en ALC. Antes de v6, Redis no incluía la noción de usuarios y la única estrategia de autenticación era una contraseña de inicio de sesión única. Referencia

  • Cada vez que adjunta un complemento de Redis al contenedor de Heroku, se establece la variable de entorno REDIS_URL y el valor es URL de conexión con el formato: redis://h:<password>@<url>:<port> . Esta "h" es un nombre de usuario falso/ficticio/de marcador de posición porque algunos clientes (p. ej., node-redis) no pudieron manejar correctamente un nombre de usuario en blanco en la URL. Después del lanzamiento de las ACL en Redis 6, los clientes comenzaron a admitir el nuevo comando AUTH que usa 2 argumentos (nombre de usuario y contraseña). Los clientes que intenten pasar el nombre de usuario h a AUTH generarán un error anterior en las versiones 4 y 5 de Redis. Referencia

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda