我是socket.io的新手,並且能夠從本地主機上正確運行的不同教程中獲得許多示例。現在我需要幫助讓它在我的網站上工作。我一直在瀏覽支持表單,但沒有運氣。任何幫助,將不勝感激。這是我迄今爲止所做的...Socket.io適用於本地主機,但不適用於網絡服務器
我使用FileZilla FTP客戶端將我的web服務器(託管於https://ifastnet.com/)的代碼(在我的本地主機上工作)導出並執行了相同的「npm init」, 「npm install express --save」,「npm install socket.io --save」,「節點app.js」過程在我使用CMD的putty SSH過程中,當我能夠使它在我的本地主機上工作時。
當我去我的網站,我不斷收到「網:: ERR_CONNECTION_RESET」在瀏覽器控制檯(谷歌瀏覽器),當我在客戶端使用
var socket = io.connect('http://31.22.4.6:1122');
。
我得到「404(未找到)」,在瀏覽器控制檯,當我使用
var socket = io();
我已經嘗試了很多的解決方案,沒有運氣
我的代碼如下。先謝謝您的幫助。
服務器
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
server.listen();
// server.listen(1122, "31.22.4.6");
app.get('/', function(req, res) {
res.sendfile(__dirname + '/client/index.html');
});
console.log("server started");
io.on('connection', function(socket) {
console.log("connection made");
socket.emit('news', {
hello: 'world'
});
socket.on('my other event', function(data) {
console.log(data);
});
});
客戶
<script src="https://cdn.socket.io/socket.io-1.4.5.js"></script>
<script>
// var socket = io.connect('http://localhost');
// var socket = io.connect('http://31.22.4.6:1122');
var socket = io();
// var socket = io.connect();
socket.on('news', function (data) {
console.log(data);
socket.emit('my other event', { my: 'data' });
});
</script>
我想你已經按照[這些說明](http://kb.ifastnet.com/index.php?/article/AA-00416/52/Node.js/Using-Node.js-on-a -premium共享承載式account.html)?在這種情況下,只需使用客戶端的默認端口(80):'var socket = io('http://31.22.4.6')'(端口80隱含)。並取消服務器中的server.listen(1122,「31.22.4.6」)註釋。 – Xodrow
感謝您的評論Xodrow。我試過了,但我仍然在瀏覽器的控制檯中發現「net :: ERR_CONNECTION_RESET」錯誤。 – DarkwallLKE