我想创建一个通过 Websocket 连接的事件发布者。当我尝试将它与我的简单套接字 io 服务器连接时,网址是
ws://localhost:3000/socket.io/
它没有收到流..
我已经为流设置了内联格式,如下所示:
42["input-message",{"LAT":{{latitude}},"LON":{{longitude}}}]
如果我正确理解你的问题,
CEP 服务器未显示错误日志意味着:
以下几点可能有助于您解决问题:
希望这会有所帮助。
因为我不能直接连接到 socket.io,所以我创建了一个简单的 websocket 作为中间件,将来自 WSO2CEP 的输入发送到 socket.io
var io = require('socket.io').listen(server);
io.set('origins', '*:*');
var WebSocketServer = require('ws').Server,
wss = new WebSocketServer({ port: 8087 })
//wss sending every message that it received to the socket.io
wss.on('connection', function connection(ws) {
console.log('a WSO2CEP-PUBLISHER is connected');
ws.on('message', function incoming(message) {
console.log('received: %s', message);
io.emit('input-message', JSON.parse(message));
});
});
请注意,来自事件发布者的数据是字符串格式的,因此如果需要将其作为 JSON 对象发送,请使用 JSON.parse() 函数。