2017-02-15 32 views
0

私は私のローカルマシン上でWebアプリケーション(クライアント)とデーモン(サーバー)実行していると、彼らはメッセージを共有を認識しません。安全なソケットを使用していない場合、すべて正常に動作します。PythonのWSS:クロムは自動検証証明書

私は今、WSSを実装しようとしていますが、Chromeは、私はopensslで生成した証明書を拒否し続けて:

webSocket connection to 'wss://localhost:8190/Action 
failed: Error in connection establishment: net::ERR_CONNECTION_CLOSED 

私がこれまで試した何を:私は追加

  • 試してみました私の.crt AppleのファイルKeyChainSystemLogin
  • 私は新しい証明書を生成してすべてを再び。私はthis libraryを使用していて、これは私がソケットを開いていますどのようにWebSocketをするために

ssl_context = ssl.create_default_context(cafile='/localhost.crt') 
st_server = websockets.serve(self.__on_receive, 'localhost', '8190', 
           ssl=ssl_context) 

すべてのヘルプを、関連文書を参照するには、はるかに高く評価されるだろう。ありがとう

答えて

0

解決済み。上記のコードを次のように変更しました:

ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH) 
ssl_context.load_cert_chain(os.path.join('/', "localhost.crt"), 
          os.path.join('/', "localhost.key")) 
st_server = websockets.serve(self.__on_receive, 'localhost', '8190', 
            ssl=ssl_context) 

基本的に私は正しく証明書を読み込んでいませんでした。

関連する問題