我已经实现了一个Python Websockets服务器程序示例。当我通过wss://myserver.com:9000连接到它时,它不工作,我在日志中看到错误EOFError("line without CRLF")。
EOFError("line without CRLF")
vcudknz31#
您可能遇到SSL(TLS)问题。首先,尝试在没有TLS的情况下连接到服务器:使用协议ws而不是wss。如果这起作用,您的问题是缺乏TLS(SSL)支持。修复:1.确保Python安装支持SSL。1.创建或获取X.509服务器证书。根据您的WebSocket客户端,您可能可以使用自签名证书。但你通常需要一个真正的证书,它们是免费的LetsEncrypt。
ws
wss
pip ssl
import ssl ... ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) ssl_context.load_cert_chain("path/to/fullchain.pem", "path/to/privkey.pem") ... server = await websockets.serve( on_connect, "", 9000, subprotocols=["ocpp1.6"], ssl=ssl_context )
1条答案
按热度按时间vcudknz31#
您可能遇到SSL(TLS)问题。
首先,尝试在没有TLS的情况下连接到服务器:使用协议
ws
而不是wss
。如果这起作用,您的问题是缺乏TLS(SSL)支持。修复:1.确保Python安装支持SSL。
1.创建或获取X.509服务器证书。根据您的WebSocket客户端,您可能可以使用自签名证书。但你通常需要一个真正的证书,它们是免费的LetsEncrypt。
pip ssl
获取SSL库1.将SSL添加到您的启动: