2016-11-18 13 views
2

私はPythonの外部パッケージwebsocket-clientを使用して、イベントを送信するRESTfulなサービスに接続しました。Pythonで標準モジュールでWebソケット(wss)に接続しますか?

from websocket import create_connection 
ws = create_connection("wss://machine:port/servicename/subscribe") 

for event in ws: 
    print event 

...getting events printed 

私は、同じ機能が外部websocket-clientパッケージまたは任意の他のサードパーティのPythonパッケージをインストールすることなく、コアのPython 2.7やPython 3.5を使用して実装することができるだろうか。

私はwss経由の接続を確立する必要があるのに対し、httpまたはtcp経由での接続を参照してください、私はインターネットを検索しましたし、コードのこれらの例は、私が見てきたPythonのsocketモジュールを使用しました。

答えて

1

非常に遅いですが、ここで遭遇する可能性のある人のために... WebソケットプロトコルはTCP上に構築されているため、プロトコルの実装はTCP経由で接続を確立することが期待されます。また、Web Socketのオープニング・ハンドシェイクはHTTPに従って行われます。これはまた、アレックスがHTTP接続を見た理由を説明します。最初から実装する方法を知りたい場合は、Webソケットモジュール(autobahn)をインストールし、Twistedおよびasyncioモジュールのインストールと読み込み、またはwampyの読み込みを行い、コードに潜んでください。モジュールに取り組む前に、https://tools.ietf.org/html/rfc6455にあるWeb Socketsプロトコル仕様を読むことをお勧めします。

関連する問題