我的 javascript 服务器代码可以读取“2011”,如果它们都是字符串,为什么不能读取“20,11”?
My javascript server code can read a "2011", why not a "20,11" if they are both String?
我正在通过 Redis 将 Storm 连接到 javascript。 redis 部分工作正常,但是当我尝试发布元组(真正的字符串)时,我的代码(来自互联网的一个例子只是稍作修改)没有收到任何东西,并且 redis 很好地收到了元组。这是我的代码:
/*
Node.js server script
Required node packages: express, redis, socket.io
*/
const PORT = 3000;
const HOST = 'localhost';
var express = require('express'),
http = require('http'),
server = http.createServer(app);
log('info', 'connected to express');
var app = express();
const redis = require('redis');
const client = redis.createClient();
log('info', 'connected to redis server');
const io = require('socket.io');
if (!module.parent) {
server.listen(PORT, HOST);
const socket = io.listen(server);
socket.on('connection', function(client) {
const subscribe = redis.createClient()
subscribe.subscribe('realtime');
subscribe.on("message", function(channel, message) {
client.send(message);
log('msg', "received from channel #" + channel + " : " + message);
});
client.on('message', function(msg) {
log('debug', msg);
});
client.on('disconnect', function() {
log('warn', 'disconnecting from redis');
subscribe.quit();
});
});
}
function log(type, msg) {
var color = '\u001b[0m',
reset = '\u001b[0m';
switch(type) {
case "info":
color = '\u001b[36m';
break;
case "warn":
color = '\u001b[33m';
break;
case "error":
color = '\u001b[31m';
break;
case "msg":
color = '\u001b[34m';
break;
default:
color = '\u001b[0m'
}
console.log(color + ' ' + type + ' - ' + reset + msg);
}
它在我发送整数时向终端发送消息,但不使用 tuples.I 我只是个菜鸟 JavaScript,我不明白为什么它不能读取元组就像一个整数。
提前致谢
我发送消息的时候,在redis的处理中,它们被拆分了,现在没有了,消息到达了客户端。
感谢您的回答!
我正在通过 Redis 将 Storm 连接到 javascript。 redis 部分工作正常,但是当我尝试发布元组(真正的字符串)时,我的代码(来自互联网的一个例子只是稍作修改)没有收到任何东西,并且 redis 很好地收到了元组。这是我的代码:
/*
Node.js server script
Required node packages: express, redis, socket.io
*/
const PORT = 3000;
const HOST = 'localhost';
var express = require('express'),
http = require('http'),
server = http.createServer(app);
log('info', 'connected to express');
var app = express();
const redis = require('redis');
const client = redis.createClient();
log('info', 'connected to redis server');
const io = require('socket.io');
if (!module.parent) {
server.listen(PORT, HOST);
const socket = io.listen(server);
socket.on('connection', function(client) {
const subscribe = redis.createClient()
subscribe.subscribe('realtime');
subscribe.on("message", function(channel, message) {
client.send(message);
log('msg', "received from channel #" + channel + " : " + message);
});
client.on('message', function(msg) {
log('debug', msg);
});
client.on('disconnect', function() {
log('warn', 'disconnecting from redis');
subscribe.quit();
});
});
}
function log(type, msg) {
var color = '\u001b[0m',
reset = '\u001b[0m';
switch(type) {
case "info":
color = '\u001b[36m';
break;
case "warn":
color = '\u001b[33m';
break;
case "error":
color = '\u001b[31m';
break;
case "msg":
color = '\u001b[34m';
break;
default:
color = '\u001b[0m'
}
console.log(color + ' ' + type + ' - ' + reset + msg);
}
它在我发送整数时向终端发送消息,但不使用 tuples.I 我只是个菜鸟 JavaScript,我不明白为什么它不能读取元组就像一个整数。
提前致谢
我发送消息的时候,在redis的处理中,它们被拆分了,现在没有了,消息到达了客户端。
感谢您的回答!