由于我是互联网/网络世界的初学者,在编程时我总是把这些疑惑搞得一团糟;)..我的怀疑是,
在代理后工作时,我的请求和响应如何工作? 这是否意味着我的请求标头和数据将首先到达代理服务器 - >然后代理服务器将它(相同的头和数据)发送到相应的服务器。 服务器响应它并使用响应头和代理服务器的主体 - >然后代理服务器将其发送到我的计算机。右
使用websockets时,我们正在将HTTP连接升级到TCP。此时代理服务器发生了什么?代理服务器是否还将其连接升级为普通TCP?
打开此类TCP连接后,代理服务器是否能够跟踪/记录这些套接字消息?
提前感谢您提供任何答案或有用的链接。
答案 0 :(得分:3)
右。
没有'将HTTP升级到TCP'这样的事情。 HTTP连接已经是TCP连接。因此,这个问题毫无意义。
能够跟踪连接,并且可以看到双向交换的所有数据。
我不确定这意味着什么。处理CONNECT命令后,代理只会在两个方向上复制字节。根据你的问题,这可能是“透明的”。
答案 1 :(得分:0)
是的,这是对的。
如果你在谈论html5 websockets,那么需要提到几件事。首先使用websockets你需要一个处理这种连接的服务器,我不知道任何服务器会支持它。有一些实现该功能的apache模块,还有perl和python独立的应用程序。尽管如此,除非你的服务器可以处理websockets,否则什么都不会发生。 同样适用于websockets代理,它可以在类似的原则上工作,我没有阅读websockets协议规范,但服务器将读取数据包的目标地址并将它们中继到服务器,然后中继服务器返回。我实际上还没有听说过websockets代理服务器,也不知道我该如何写它,我不相信还有这样的东西;请记住,协议仍未完全标准化。
在所有数据包通过代理传输之后,我会这么认为,除非您通过SSL对其进行加密。
道歉我无法向您提供更多信息,但我最近才开始使用websockets,而且它仍然不是很普遍的技术。
此外,我会指出您关注资源,他们似乎为您的问题提供了一些答案:
http://www.infoq.com/articles/Web-Sockets-Proxy-Servers http://stackoverflow.com/questions/2201317/why-dont-current-websocket-client-implementations-support-proxies