Ich bin relativ neu zu node.js und Addons, so ist dies wahrscheinlich eine Anfängerfrage.Verbinden von Client zu Server mit Socket.io
Ich versuche, eine einfache HTML-Seite auf einem Webserver eine Verbindung zu einem anderen Server mit node.js mit Websocket.io zu bekommen.
Mein Code sieht wie folgt aus:
Kunde
<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>
Server
// 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 + '/');
Inbetriebnahme der Server funktioniert gut und läuft http://localhost:8080 in meinem Browser funktioniert auch, Rückkehr 'Hello Socket Lover' wie erwartet. Aber ich möchte eine andere Seite mit den Sockets reden lassen, nicht eine von node.js.
Aber wenn ich es laufen, passiert nichts und die Chrome-Konsole kehrt:
Failed to load resource http://undefined/socket.io/1/?t=1333119551736
Failed to load resource http://undefined/socket.io/1/?t=1333119551735
Ich habe an diesem ganzen Tag gewesen. Irgendeine Hilfe?
'var socket = io()' –