2017-03-03 11 views
2

Ich habe eine Seite sagen mydomain/home.phpWie stellt man eine Verbindung zu einem socket.io Server von einem anderen Host her her?

Jetzt habe ich die Einrichtung eines NodeJS Server sagen bei 23.23.234.22/home (/ home ist ein erhalten Strecke). Ich habe den Code für socket.io Server geschrieben und schließlich Server läuft.

Jetzt möchte ich clientseitige code in home.php schreiben, die ähnlich dem unten angegebenen code sein würde.

Was ich will, ist eine Anforderung an 23.23.234.22/home senden und ich sollte eine Buchse Antwort in Konsole Browser sehen, wenn home.php geöffnet ist. Ich möchte, dass dies jedes Mal funktioniert, wenn ich eine Anfrage an sie stelle, nicht nur wenn der Server verbunden ist.

Ich weiß, mit diesem Code wird es nicht funktionieren. Ich weiß nicht, wie dies tun. Welche zusätzlichen Änderungen brauche ich?

socket.js

var express = require('express'); 
var app = express(); 

var bodyParser = require('body-parser'); 
app.use(bodyParser.json({type: '*/*'})); 
var server = require('http').createServer(app); 

app.get('/home', function(req, res){ 
    //WRITE SOCKET SERVER CODE HERE? 
}); 

var io = require('socket.io')(server); 

app.use(express.static('/opt/lampp/htdocs/testproject/node_modules')); 
app.use(express.static('/opt/lampp/htdocs/testproject/')); 

io.on('connection', function(client) { 
    console.log("connected"); 
    client.emit("message", "Some thing to show"); 
}); 
server.listen(8080); 

home.php

<html lang="en"> 
<head> 

</head> 
<body> 
<script src="/socket.io/socket.io.js"></script> 
<script> 

//CHANGE FOLLOWING ADDRESS? 
    var socket = io.connect('http://23.23.234.22/home'); 
    socket.on('connect', function(data) { 
     console.log("Connected..."); 

    }); 

    socket.on("message", function(data){ 
     console.log(data); 
    }); 

</script> 
</body> 
</html> 

Antwort

0

Änderung home.php

var socket = io.connect('http://23.23.234.22/home'); 

zu

var socket = io.connect('http://23.23.234.22:8080'); 
Verwandte Themen