问题: 客户端发送一个http请求。对于那个HTTP请求,我希望我的tornado服务器打开一个到外部服务器的websocket连接,并获得一些数据超时(这些数据我需要存储在数据库中)。我还需要能够处理多个用户对tornado服务器的请求。在
这是我的实现
from twisted.internet import reactor
from autobahn.websocket import WebSocketClientFactory, WebSocketClientProtocol, connectWS
from tornado.options import define, options, parse_command_line
class IndexHandler(tornado.web.RequestHandler):
@tornado.web.asynchronous
def get(self):
self.write("This is your response")
factory = WebSocketClientFactory("ws://localhost:7096")
factory.protocol = BridgeSocket
connectWS(factory)
self.finish()
reactor.run()
下面是我的套接字连接类:
^{pr2}$这里运行反应堆()阻止了对Tornado web服务器的进一步http请求,因此我尝试了反应器.停止()一旦websocket工作完成并关闭。但现在我发现重启反应堆是不可能的。在
有没有更好的方法或者我可能遗漏的东西。。在
如果您想从AutobahnPython在Tornado下运行WebSocket客户端,则需要Twisted Tornado集成(“Twisted on Tornado”)—请参见here。这在龙卷风中运行着一个扭曲的反应堆回路。在
相关问题 更多 >
编程相关推荐