【问题标题】:Nodejs , Redis,SocketsNodejs,Redis,套接字
【发布时间】:2017-11-26 16:33:03
【问题描述】:

我有一个 nodejs 应用程序,它从 redis 读取数据,但我无法将其推送到套接字中。在 c.write(message) 部分,如果我硬编码(例如 c.write('hello') ,消息将被放入套接字但是当我把它作为 c.write(message) 时,什么都不会发生套接字。提前致谢,

var net = require('net');
var split = require('split');
var Redis = require('ioredis');
var redis = new Redis();


var server = net.createServer(function(c) {

    console.log('client connected');
    c.on('end', () => {
        console.log('client disconnected');
    });

    redis.subscribe('test-channel');

    redis.on('message', function(channel, message) {
        console.log(message);
        c.write(message);
        c.pipe(c);
    });
});

server.on('error', (err) => {
    throw err;
});
server.listen(3005, 'localhost', () => {
    console.log('server bound');
});

【问题讨论】:

  • 打印 console.log(message) 时你得到了什么?
  • 从 redis 发布的消息。 @professionallyme86

标签: node.js sockets redis


【解决方案1】:

我已经知道答案了。

只需在您的代码中添加以下行:

var message_redis = message+'\r'+'\n';
c.write(message_redis);

【讨论】:

    猜你喜欢
    • 2022-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-27
    • 2022-06-16
    • 2022-01-18
    • 2021-01-14
    相关资源
    最近更新 更多