V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fankcoder
V2EX  ›  Node.js

nodejs 新手,请教个问题,求大佬们帮下忙,感谢

  •  
  •   fankcoder · 2020-03-15 14:53:55 +08:00 · 3196 次点击
    这是一个创建于 1496 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在使用 redis 取 get 总是返回 null 或者 undefined

    如图:

    Alt

    session1 "j6e9****a37k" 目前只有这里可以拿到 value 值

    session4 undefined 在同样的缩进下,只是位置不同,又拿不到 value 值了,很不理解。

    (这里打印了 userid 值为 session:abc, 是可以确保正确获取到了值)

    session3 null

    session2 undefined function print (err, reply) { if (err) { // A error always begins with Error: console.log(err.toString()); } else { console.log('Reply: ' + reply); } }

    我现在需要在 session2 或者 session3 的位置通过 redis get 方法( key 是 userid )获取到 value,

    但是可以看到我写 key 为字符串"session:abc"都拿不到值,

    我该如何才能正确的获取到"session:abc"的 value 呢?

    求大佬指教,再次感谢!

    7 条回复    2020-03-15 16:00:19 +08:00
    4074
        1
    4074  
       2020-03-15 15:11:23 +08:00   ❤️ 1
    图挂了
    fankcoder
        2
    fankcoder  
    OP
       2020-03-15 15:14:37 +08:00
    fankcoder
        3
    fankcoder  
    OP
       2020-03-15 15:16:59 +08:00
    fds
        4
    fds  
       2020-03-15 15:35:12 +08:00   ❤️ 1
    https://redis.io/commands/subscribe
    Once the client enters the subscribed state it is not supposed to issue any other commands, except for additional SUBSCRIBE, PSUBSCRIBE, UNSUBSCRIBE, PUNSUBSCRIBE, PING and QUIT commands.
    4074
        5
    4074  
       2020-03-15 15:35:34 +08:00
    就这一段代码不好判断。有一点疑问, `sub` 为什么 `get` 是取 redis,`on` 又像是监听了 socket ?
    fankcoder
        6
    fankcoder  
    OP
       2020-03-15 15:59:13 +08:00
    @4074 sub 是 redis 客户端连接,on 是监听 redis 的 channel
    fankcoder
        7
    fankcoder  
    OP
       2020-03-15 16:00:19 +08:00
    @fds @4074 已解决,感谢~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4751 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 09:57 · PVG 17:57 · LAX 02:57 · JFK 05:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.