繁体   English   中英

ERR_CONNECTION_REFUSED http://localhost:3000/socket.io/socket.io.js

[英]ERR_CONNECTION_REFUSED http://localhost:3000/socket.io/socket.io.js

Ciao,我正在实现一个 webRTC 多对多视频会议系统,实际上,我已经做到了,我使用 socket.IO 作为信令服务器,一切都非常顺利,我正在使用 EnterpriseDB Apache 为我的 .html 文件提供服务在端口 (8081) 和 Node.js 上为端口 (3000) 上的 socket.IO 提供服务,它在 localhost 中就像魅力一样工作,没有错误,我的问题正在使用我的公共 IP 提供外部访问,我正在和我的朋友一起测试,这些浏览服务:www.browserstack.com 和 www.browserling.com(试用版)。

  • 使用 www.browserstack.com,使用 mozilla 42 或 chrome 47 一切正常

  • 使用 www.browserling.com,我收到了这些错误

    Firefox 41:ReferenceError:io 未定义

    Chrome 45:无法加载资源http://localhost:3000/socket.io/socket.io.js net::ERR_CONNECTION_REFUSED Uncaught ReferenceError: io is not defined

  • 和我的朋友一起,我遇到了与 www.browserling.com 相同的问题,但他们使用最新的浏览器版本(Chrome 47 和 Firefox 42)连接到我的 PC 服务器。

我认为这不是浏览器版本问题,问题在于提供 socket.io.js 文件,最后,这是我的代码:

它仅显示了解决此问题的重要事项:

///NODE.JS DIRECTORY
////////////////////serverside.js
var port = 3000;
var io = require('socket.io').listen(port);
io.sockets.on('connection', function (socket){.........}


///APACHE DIRECTORY
////////////////////clientside.js 
//Connect to signalling server   
var socket = io.connect("http://localhost:3000");

////////////////////avq.html
<!DOCTYPE html>

<html lang="es">

    <head><meta charset="UTF-8">
    </head> 
    <body>
        <script src="http://localhost:3000/socket.io/socket.io.js"></script>
        <script src="js/clientside.js"></script>
    </body>
</html>

如果有人想尝试,这是我的服务器 URL: http : //201.209.104.33 : 8081/webrtcexamples/avq.html

localhost是一种特殊的主机名,它指向与请求它的计算机相同的计算机。 因此,任何使用与您不同的计算机并尝试连接到localhost都会尝试连接到自己的计算机,而不是您的计算机。 由于服务器没有在他们的计算机上运行,​​他们很明显会收到“连接被拒绝”错误。

您需要将localhost替换为可全局访问的地址(域名或 IP 地址)。 这也意味着您需要让路由器将您的外部 IP 地址映射到运行此端口服务器的计算机(否则它们将连接到您的路由器,而不是您的服务器)。

尝试io.connect("http://201.209.104.33:3000"); 而不是io.connect("http://localhost:3000");

编辑

您需要在正在使用它的服务器上运行套接字。 因此,如果您在 PC 上运行它,您朋友的 pc 将看不到它,因为当它连接到localhost ,它会尝试连接到他们的 pc 的localhost 不是你的。

我之前也遇到过同样的问题。 您需要在服务器上运行它,以便每个人都可以连接到它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM