我在雲端有一個託管服務器。我正在嘗試使用socket.io。Socket.io,服務器沒有響應連接事件
client.php:
var socket = io('http://localhost:3000');
console.log(socket);
server.js:
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
server.listen(3000);
io.on('connection', function(socket){
console.log('is connected');
});
當訪問該頁面,我看到控制檯的網絡部分的200 OK兩個實例。 瀏覽器中的控制檯還會打印具有「connected:true」的套接字變量。
但是,我沒有看到終端中的「已連接」(來自server.js),它只是空白。
此網站已在本地運行,但在嘗試使其在Cloudways上運行時出現這些問題。
任何想法?
我已經嘗試將「localhost」切換到域名和IP地址,並且我嘗試了不同的端口,但3000是唯一一個可以讓我無錯地啓動server.js的端口。
編輯
Cloudways已經證實,3000端口應該被使用。
我試圖改變在IO()的URL:
var socket = io('http://my-cloudways-url:3000'); (net::ERR_EMPTY_RESPONSE)
var socket = io('http://www.my-domain.club:3000'); (net::ERR_EMPTY_RESPONSE)
var socket = io('http://ip-adr:3000'); (net::ERR_EMPTY_RESPONSE)
今天我得到
var socket = io('http://localhost:3000'); (net::ERR_CONNECTION_REFUSED)
我也曾嘗試io.connect(使用相同的不會忽略/端口) 。
感謝您嘗試幫助我,但是當我這樣做時,我只是在嘗試創建套接字時在控制檯中收到「404」(未找到)錯誤。 – Bergkamp10
您是否嘗試在您的終端(雲)中使用npm安裝socket.io軟件包? –
是的,通過安裝npm – Bergkamp10