socket.io.js error connecting using node.js and localhost html client -
im getting error socket.io.js:2919 , net::err_connection_refused looking solved, need add more details post this
heres server socket code
var app = require('http').createserver(connecthandler), io = require('socket.io').listen(app), fs = require('fs'); app.listen(8080); function connecthandler (req, res) { fs.readfile(__dirname + '/client.html', function (err, data) { if (err) { res.writehead(500); return res.end('error loading client.html'); } res.writehead(200); res.end(data); }); } var members = []; io.sockets.on('connection', function (socket) { socket.on('joined', function(data) { var mbr = data; mbr.id = socket.id; members.push(mbr); socket.broadcast.emit('joined', data); console.log(data.name, 'joined room'); }); socket.on('message', function(data) { socket.broadcast.emit('message', data); }); socket.on('disconnect', function() { (var = 0; < members.length; i++) { if (members[i].id === socket.id) { socket.broadcast.emit('disconnected', { name: members[i].name }); } } }); }); and here html socket client
<!doctype html> <html> <head> <script src="/socket.io/socket.io.js"></script> </head> <body> <div id="messages"> </div> <form id="newchat"> <textarea id="text"></textarea> <input type="submit" id="sendmessage" value="send" /> </form> <script> var socket = io.connect('http://localhost'); var who; socket.on('connect', function() { var chatter = prompt('please enter name'); chatter = (chatter === "" || chatter === null) ? "anon" : chatter; addchatter("you", "joined"); = chatter; socket.emit('joined', { name: chatter }); }); function addchatter(name, message) { var chat = document.getelementbyid("messages"); chat.innerhtml += "<div>" + name + " - " + message + "</div>"; } socket.on('joined', function(data) { console.log(data); addchatter(data.name, ' joined'); }); socket.on('disconnected', function(data) { addchatter(data.name, 'disconnected'); });
the localhost connection in html file can established in new version by:
var socket = io();
which bind server itself.
please refer http://socket.io/get-started/chat/
as side note; starting connection on server can done :
io.on('connection' ...
instead of
io.sockets.on('connection' ...
var app = require('http').createserver(connecthandler), io = require('socket.io').listen(app), fs = require('fs'); function connecthandler (req, res) { fs.readfile(__dirname + '/client.html', function (err, data) { if (err) { res.writehead(500); return res.end('error loading client.html'); } res.writehead(200); res.end(data); }); } var members = []; io.on('connection', function (socket) { console.log(socket); socket.on('joined', function(data) { var mbr = data; mbr.id = socket.id; members.push(mbr); socket.broadcast.emit('joined', data); console.log(data.name, 'joined room'); }); socket.on('message', function(data) { socket.broadcast.emit('message', data); }); socket.on('disconnect', function() { (var = 0; < members.length; i++) { if (members[i].id === socket.id) { socket.broadcast.emit('disconnected', { name: members[i].name }); } } }); }); app.listen(8077); <!doctype html> <html> <head> <script src="https://cdn.socket.io/socket.io-1.3.5.js"></script> </head> <body> <div id="messages"> </div> <form id="newchat"> <textarea id="text"></textarea> <input type="submit" id="sendmessage" value="send" /> </form> <script type="text/javascript"> var socket = io(); var who; socket.on('connect', function() { var chatter = prompt('please enter name'); chatter = (chatter === "" || chatter === null) ? "anon" : chatter; addchatter("you", "joined"); = chatter; socket.emit('joined', { name: chatter }); }); function addchatter(name, message) { var chat = document.getelementbyid("messages"); chat.innerhtml += "<div>" + name + " - " + message + "</div>"; } socket.on('joined', function(data) { console.log(data); addchatter(data.name, ' joined'); }); socket.on('disconnected', function(data) { addchatter(data.name, 'disconnected'); }); </script>
Comments
Post a Comment