使用websockets时的奇怪行为

时间:2016-09-06 14:16:51

标签: javascript c# html5 iis websocket

我写了一个简单的websocket服务器/客户端。 服务器使用C#(System.Net.WebSockes)编写,客户端是javascript (虽然服务器技术无关紧要,因为我用信号器测试了它,并在websocket传输的握手过程中得到了同样的错误)。 问题是:

1-在某些客户端上我可以轻松连接到服务器并且运行良好。

2-在其他一些客户端上,我在握手期间得到错误代码1006       在这些客户端中,当我打开代理应用程序(如PSiphon)时,它可以连接到服务器。但是,在约6秒后会断开连接。

我真的非常困惑,最后经过几个小时的尝试,我决定在这里提出一个问题。 我不认为它与代码有关,但无论如何我把它放在这里。

parser = argparse.ArgumentParser()
...
parser.add_argument("-o", "--options", nargs="+", help="additional options")
args = parser.parse_args()
...
def some_function(arguments, **kwargs):
   doing something with kwargs['options']
   return something
...
arguments = ...
some_function(arguments, options=args.options)

更新1:我联系过系统管理员(托管公司),他们说这可能是因为客户的ISP。如果是这样的话,我会感谢任何提示,以确保是否有某种代理服务器导致麻烦?

更新2:,因为@vtortola提到我创建了一个自签名证书并添加到网站(IIS和Plesk)。有一些改善,但仍然断开连接

提前致谢..

1 个答案:

答案 0 :(得分:1)

它闻起来像是代理问题。使用安全连接(wss://)并检查它是否变好。基本上,如果您的某些客户端落后于代理,WebSocket连接可能会以许多意想不到的方式行为不端。

How HTML5 Web Sockets Interact With Proxy Servers