我正试图通过公司防火墙后面的websocket通过应用程序连接到
我使用安全的websockets,没有代理,一切正常。我找了些例子,但没有一个对我有用
from autobahn.twisted.websocket import WebSocketClientProtocol, \
WebSocketClientFactory
from twisted.internet import ssl, reactor
class MyClientProtocol(WebSocketClientProtocol):
def onConnect(self, response):
pass
def onConnecting(self, transport_details):
return None # ask for defaults
def onOpen(self):
pass
def onClose(self, wasClean, code, reason):
print(reason)
if __name__ == '__main__':
server_ip = "example.com"
server_port = 443
proxy = {'host': 'proxy', 'port': 3128} # <-- if proxy is not None, then connection is always lost with reason 'connection was closed uncleanly (None)'
factory = WebSocketClientFactory(f"wss://{server_ip}:{server_port}")
factory.protocol = MyClientProtocol
factory.proxy = proxy
reactor.connectSSL(server_ip, server_port, factory, ssl.ClientContextFactory())
reactor.run()
它看起来不支持factory.proxy,我在代理日志中没有看到任何请求尝试,而如果它不是None,则会发生一些错误
如何为安全WebSocket配置代理
PS:autobahn 19.10.1,twisted 19.7.0
目前没有回答
相关问题 更多 >
编程相关推荐