当前位置: 首页 > 知识库问答 >
问题:

在Redis中存储JSON编码的对象

宗翔宇
2023-03-14

我使用laravel Redis cache facade将我的对象数据(JSON编码)推送到Redis,并使用Node.js Redis模块使用关键字搜索取回数据。我的JSON字符串像这样存储在Redis中s:2257:“{”footer_finders“:{”footer_block1_finders“:[{”_id“:1803,”slug“:”pqr“,”title“:”xyz“,”finder_coverimag。这里的字符串s:2257破坏了我在节点上的JSON解析。Redis存储了我的json_encoded字符串,附加了一些s:random_number

有什么建议如何解决这个问题,或者我应该看看redis的其他数据类型(列表或哈希)而不是字符串?

谢谢

共有1个答案

齐锐进
2023-03-14

您可以在Redis的for序列化程序中重写当前的编码类型。显然laravel中的predis不支持为redis中的对象更改serailizer

 类似资料:
  • 问题内容: 可以说我有一个由几个属性(ID,名称,Surename,Age)组成的对象(用户)。哪种方法最好在Redis中存储该对象? 将每个属性值存储在专用密钥中,例如,用户:{id}:id,用户:{id}:name,用户:{id}:surename,用户:{id}:age 将整个User对象作为JSON字符串存储在一个密钥中,例如user:{id}:json(密钥的值将如下所示:{“ ID”:

  • 问题内容: 这就是事情- 我想在特定键下的redis中存储本机JS(node.js)对象(闪存套接字引用)。当我简单地做到这一点时,它存储为一个字符串。当我尝试获得价值时,我得到的只是一个字符串。 有机会工作吗?这是我的代码: 问题答案: 下载者:这里的上下文是SET命令,可以存储任意对象。 不,你不能那样做。您应该接受以下事实:Redis将所有内容存储为字符串(毕竟,协议是基于文本的)。Redi

  • 我想将 JSON 存储在卡桑德拉数据库中。JSON 的每个字段都应映射到其各自的列。 可能吗?如果可能的话,我如何才能实现它?。 请帮帮我..

  • 我使用RedisCacheManager在我的Spring启动应用程序中存储我的缓存数据。默认序列化程序似乎将所有内容序列化为字节,并从字节反序列化为适当的java类型。 但是,我想将缓存数据存储为json,这样我就可以从non-java客户端读取它。 我发现,从默认的序列化程序切换到其他序列化程序(如Jackson2JsonRedisSerializer)应该可以工作。执行此操作后,反序列化阶段

  • 问题内容: 我最近在nodejs中从memcached切换到Redis。我在node- memcached中喜欢的事情是我可以将整个javascript对象保存在内存中。可悲的是,我无法在Redis中做到这一点。例如,我得到以下对象: 使用3rd-Eden / node-memcached我可以做到: 然后 然后,我将按原样获得保存的对象。 Redis的问题在于,如果我像这样保存对象: 当我获得价

  • 问题内容: 我有一个要存储在Redis中的对象数组。我可以分解数组部分,并将它们存储为对象,但是我不知道如何获得类似 然后根据名称搜索数据库,并获取返回的密钥。我需要这样的东西。但几乎无法做到正确。 首先是使这一部分正确。 其次是以某种方式从值中获取密钥,即 我觉得很难。或者,我可以将其直接存储为对象数组并使用简单的for循环。 请建议哪种路线最适合某些实现? 问题答案: 我发现工作是将密钥存储为