Sono relativamente nuovo a node.js e ai suoi add-on, quindi questa è probabilmente una domanda per principianti.Connessione client a server tramite Socket.io
Sto provando a ottenere una semplice pagina HTML su un server web connesso a un server diverso che esegue node.js con websocket.io.
Il mio codice è simile al seguente:
client
<script src="socket.io/socket.io.js"></script>
<script>
// Create SocketIO instance, connect
var socket = new io.Socket();
socket.connect('http://127.0.0.1:8080');
// Add a connect listener
socket.on('connect',function() {
console.log('Client has connected to the server!');
});
// Add a connect listener
socket.on('message',function(data) {
console.log('Received a message from the server!',data);
});
// Add a disconnect listener
socket.on('disconnect',function() {
console.log('The client has disconnected!');
});
// Sends a message to the server via sockets
function sendMessageToServer(message) {
socket.send(message);
};
</script>
Serverside
// Require HTTP module (to start server) and Socket.IO
var http = require('http');
var io = require('socket.io');
var port = 8080;
// Start the server at port 8080
var server = http.createServer(function(req, res){
// Send HTML headers and message
res.writeHead(200,{ 'Content-Type': 'text/html' });
res.end('<h1>Hello Socket Lover!</h1>');
});
server.listen(port);
// Create a Socket.IO instance, passing it our server
var socket = io.listen(server);
// Add a connect listener
socket.on('connection', function(client){
console.log('Connection to client established');
// Success! Now listen to messages to be received
client.on('message',function(event){
console.log('Received message from client!',event);
});
client.on('disconnect',function(){
clearInterval(interval);
console.log('Server has disconnected');
});
});
console.log('Server running at http://127.0.0.1:' + port + '/');
Avvio il server funziona bene e in esecuzione http://localhost:8080 nel mio browser funziona anche, di ritorno 'Hello Socket Lover' come previsto. Ma voglio fare una pagina diversa parlare ai socket, non eseguirne uno da node.js.
Ma quando l'eseguo, non accade nulla ei rendimenti console Chrome:
Failed to load resource http://undefined/socket.io/1/?t=1333119551736
Failed to load resource http://undefined/socket.io/1/?t=1333119551735
Sono stato in questo tutto il giorno. Qualsiasi aiuto?
'var socket = io()' –