我正在使用websockets,看来,我测试的所有具有本机websocket支持的浏览器(Safari,Chrome)阻止了一些端口.如果我尝试通过端口80连接到我的服务器,每个工作正常.如果我尝试其他端口,如81,82或1000,则连接过早关闭,因为另一端没有任何东西.这是预期的行为,它的工作非常精彩.
但是,对于某些端口(例如20,37或79),Chrome开发人员控制台只是说,WebSocket port 79 blocked但我的JS代码没有收到任何有关此信息的信息(甚至没有某种超时).Safari有点冗长和评论SECURITY_ERR: DOM Exception 18: An attempt was made to break through the security policy of the user agent.
所以我的问题是:
如何可靠地检测到端口被阻塞?
我是否必须设置超时并手动检查?这似乎不是最明智的方式,尽管它可能是跨浏览器的唯一方法.
我在哪里可以找到被阻止端口的列表?
不幸的是,我的谷歌搜索没有发现任何有用的东西.
为什么这些端口首先被阻止?
提前致谢!