使用身份验证用户名/密码nodejs连接到托管Redis

问题描述

编辑:考虑了这个问题之后,真正的问题是,如何使用tls通过node-redis连接到digitalocean的托管Redis?

我可以使用用户名/密码与redisinsight GUI客户端很好地连接,但是不能与nodejs连接。它在同一台计算机上,因此没有防火墙问题。

var redis = require('redis');
var client = redis.createClient(process.env.REDIS_PORT,process.env.REDIS_URL,{no_ready_check: true});
client.auth('password',function (err) {
    if (err) {
      console.log(err);
      return
    }
    console.log('auth')
});

我很困惑的一件事是在哪里输入用户名?只是“默认”,但是node_redis的文档没有提供在身份验证期间提供用户名的方法。

错误是:AbortError: Redis connection lost and command aborted. It might have been processed.

这是我正在工作的匿名匿名reisinsight连接屏幕。

我如何在node-redis中做同样的事情?

enter image description here

解决方法

the docs中所述的npm install cd ios; pod install; cd../ react-native link 命令:

使用ACL时,命令的单参数形式 仅指定密码的地方,假定隐式用户名是“默认”。

因此,即使您使用支持其他用户的Redis 6,您对AUTH的身份验证也应能工作。

您看到的错误是由于连接断开造成的,例如您以某种方式失去了与Redis服务器的连接。 default正在处理以下两种情况之一(或两种):连接超时或重新连接尝试已超过配置中指定的最大数目。我会仔细检查您的连接信息以及Redis服务器的配置方式。

我看到您正在使用TLS,您可能会发现此功能有用:Securing Node Redis

如果要使用其他用户对node-redis客户端进行身份验证,则在使用Redis 6时,必须使用node-redis,但是在需要删除当前的{{ 1}}命令,因为当前node-redis不支持新命令send_command

AUTH

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...