gpt4 book ai didi

object - node.js 在 redis 中存储对象

转载 作者:IT老高 更新时间:2023-10-28 21:53:49 28 4
gpt4 key购买 nike

事情是这样的——我想在 redis 中存储原生 JS(node.js)对象(闪存套接字引用)的某个键。当我使用简单的 client.set() 执行此操作时,它会存储为字符串。当我尝试获取值(value)时,我得到 [object Object] - 只是一个字符串。

有没有机会让这个工作?这是我的代码:

  addSocket : function(sid, socket) {
client.set(sid, socket);
},

getSocket : function(sid) {
client.get(sid, function(err, reply) {
// cant't get an object here. All I get is useless string
});
},

最佳答案

由于套接字的类型是Object,所以在存储之前需要将对象转换为字符串,在检索套接字时,需要将其转换回对象。

你可以使用

JSON.stringify(socket) 

转换成字符串

JSON.parse(socketstr) 

转换回一个对象。

编辑:

自从 2.0.0 版本发布以来,我们能够将对象作为哈希值存储到 Redis 中。

client.hmset("hosts", "mjr", "1", "another", "23", "home", "1234");

client.hgetall("hosts", function (err, obj) {
console.dir(obj);
});

https://redis.io/commands/hset

https://github.com/NodeRedis/node_redis

关于object - node.js 在 redis 中存储对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8694871/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com