2017-02-15 24 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文件在蘋果KeyChainSystemLogin
  • 我試過了生成一個新的證書,再次。

對於WebSockets的我使用this library,這是怎麼了打開插座:

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) 

基本上我沒有正確加載證書。