当前位置: 首页 > 面试题库 >

如何从Redis Store Client中的键/值对中的值获取键?

越风史
2023-03-14
问题内容

我在我的socket.io聊天应用程序的Redis存储中存储了用户名/ SocketID对。

当用户断开连接时,我需要从Redis存储中删除用户名/
socketID对。我已经看到了如何从键中获取值,但从未从值中获取键。可能吗?或无论哪种方式,我怎么能只从值中删除键/值对。这是我的代码

用于在连接上添加存储

socket.on('username', function (username) {

    client.set(username, socket.id, function (err) {
        console.log(username + ":" + socket.id);
    });

});

对于断开连接,客户端将不知道何时断开连接,可能是由于Internet连接断开而发生的,但是当套接字断开连接时,它总是会遇到“断开连接”事件。在这种情况下,我需要删除用户名/
socketID对。

socket.on('disconnect', function () {

// dont know the username??

    client.del(username, socket.id, function (err) {
        if (err)
            console.log(err);
        else {
            socket.disconnect();
            console.log(socket.id + " DISCONNECTED");
        }
    });
});

问题答案:

最简单的方法是存储
对。一个与username/id另一个id/username。因此,无论您拥有什么信息,都可以获取其他信息,因此也可以获取其他键/值对。



 类似资料:
  • 问题内容: 这是Firebase的后续问题-构建数据库的正确方法 我具有以下数据库结构: 我想查询歌手参考,看看歌手是否已在数据库中,以及歌手是否在数据库中,请获取歌手键(在上面的示例中为 -KKMkpA22PeoHtBAPyKm )。 我尝试了这个: 但是“ snapshot.key”只给了我“艺术家”的父密钥。 如何获得所需的钥匙? 问题答案: 在if条件下,您需要获取allKeys才能获取“

  • 问题内容: 我有一本Swift字典。我想获得钥匙的价值。密钥方法的对象对我不起作用。如何获得字典键的值? 这是我的字典: 问题答案: 使用下标访问字典键的值。这将返回一个可选: 要么 您还可以枚举所有键和值: 或枚举所有值:

  • 我有一个JsonNode,如下所示 我试图得到粉红色的价值,例如这样 但这不起作用——有没有其他方法可以通过Java访问这些值?

  • 我得到了响应从REST API到响应对象后,通过RestAsared API调用。 响应主体是json,我想从中获取特定的键值吗? 以下是代码 如何在字符串中获取特定的键值?

  • 我是Javascript新手,我正试图从包含多个对象的数组中获取id键的值。 通过 for..在循环中,我需要对象的id - 如1,2或3 - 与不同的值进行比较。 我试着这样做: 但是,我这样做了,删除Id值返回未定义。 我想不通为什么返回未定义,我无法解决这个问题。 我希望我能很好地表达自己,对不起我的英语不好。

  • 问题内容: 我在下面的对象中尝试获取所有id值。 使用以下代码,我仅获得第一个id值。有没有办法从嵌套对象中获取所有id值,而无需使用任何外部模块。 预期产量 问题答案: 您可以使用如下所示的JavaScript函数来获取嵌套属性: 检查此小提琴以获取可行的解决方案。