What about WAMP.2?


似乎

很难找到关于WAMP.2协议的任何信息。我正在尝试连接到使用WAMP.2的webSocket,使用Python,autobahn和twisted。但是,我不断收到此错误:

2018-03-09 14:54:53+0100 [-] Log opened.
2018-03-09 14:54:53+0100 [-] Starting factory 
<autobahn.twisted.websocket.WebSocketClientFactory object at 0x000002A461F489B0>
2018-03-09 14:54:53+0100 [-] failing WebSocket opening handshake ('WebSocket connection upgrade failed (400 -ThisserveronlyspeaksWebSocketsubprotocolswamp.2.cbor.batched,wamp.2.cbor,wamp.2.msgpack.batched,wamp.2.msgpack,wamp.2.ubjson.batched,wamp.2.ubjson,wamp.2.json.batched,wamp.2.json)')
2018-03-09 14:54:53+0100 [-] dropping connection to peer tcp4:... with abort=True: WebSocket connection upgrade failed (400 - ThisserveronlyspeaksWebSocketsubprotocolswamp.2.cbor.batched,wamp.2.cbor,wamp.2.msgpack.batched,wamp.2.msgpack,wamp.2.ubjson.batched,wamp.2.ubjson,wamp.2.json.batched,wamp.2.json)
2018-03-09 14:54:53+0100 [-] Stopping factory 
<autobahn.twisted.websocket.WebSocketClientFactory object at 0x000002A461F489B0>
2018-03-09 14:55:01+0100 [-] Received SIGINT, shutting down.
2018-03-09 14:55:01+0100 [-] Main loop terminated.

现在,通常,当我遇到困难时,我至少可以在互联网上找到一些关于它的东西。但是,似乎几乎没有关于此的信息(谷歌甚至没有给出任何与WAMP.2相关的结果(。

我想,如果 webSocket 服务器使用 WAMP.2,一定有办法连接到它们,对吧?如果是这样,为什么很难找到关于它的任何内容?

我正在使用的代码:

from autobahn.twisted.websocket import WebSocketClientFactory, 
WebSocketClientProtocol, connectWS
from twisted.internet import reactor
class EchoClientProtocol(WebSocketClientProtocol):
    def sendHello(self):
        self.sendMessage("Hello, world!")
    def onOpen(self):
        self.sendMessage("Hi there")
    def onMessage(self, msg, binary):
        print("Got echo: " + msg)
        reactor.callLater(1, self.sendHello)
if __name__ == '__main__':
    import sys
    from twisted.python import log
    log.startLogging(sys.stdout)
    factory = WebSocketClientFactory("wss://api.poloniex.com")
    factory.protocol = EchoClientProtocol
    connectWS(factory)
    reactor.run()

WAMP是一个位于WebSocket之上的协议,你需要一个实现它的库。

高速公路|Python 这样做了,但您正在尝试与 WAMP 路由器建立纯 WebSocket 连接。这自然会失败。

有关如何从 Python 连接到 WAMP 路由器的基本示例,请参阅 例如 https://github.com/crossbario/crossbar-examples/tree/master/hello/python

旁注:WAMP v2 是 http://wamp-proto.org/implementations/中列出的所有实现正在运行的内容。 版本 1 几乎已经屈服于历史书。

相关内容

  • 没有找到相关文章

最新更新