Я пытаюсь передать сообщение от клиента node.js веб-клиенту. Я предполагаю, что это должно быть сделано через сервер. Любая помощь приветствуется.socket.emit from node.js клиент для клиента браузера
Erorr я вижу в браузере:
GET http://10.1.0.47/socket.io/?EIO=3&transport=polling&t=1438260260496-8 net::ERR_CONNECTION_REFUSED
node.js Заказчик:
socket.emit('clientMessage', jsonData, 'Pi-Voyager');
Сервер:
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
var port = process.env.PORT || 8080;
server.listen(port, function() {
console.log('Gulp is starting my app on PORT: ' + port)
});
app.get('/', function (req, res) {
res.sendFile(__dirname + '/index.html');
});
io.on("connection", function(socket) {
socket.on('clientMessage', function(jsonData, from) {
socket.emit('serverMessage', 'Got a message!', jsonData);
console.log('Data being sent from', from, 'is:\n' + jsonData);
});
});
веб-клиент:
<body>
<h1>9.html</h1>
<div id="messages"></div>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect("/");
socket.on("serverMessage", function(msg) {
document.getElementById("messages").innerHTML += msg + "<br>";
})
</script>
</body>
У вас есть одно приложение node.js в качестве клиента, одно веб-приложение в качестве клиента и сервер node.js, все отдельно? Кроме того, вам нужно отправить больше кода, так как вы получаете ошибки при подключении, а не на отправку сообщений. – ralh
Да, один узел, один клиент узла и один веб-клиент, все отдельно. Вы правы, я обновил свой код, чтобы отразить более точную проблему. – CiscoKidx