【发布时间】:2023-03-29 21:45:01
【问题描述】:
我正在尝试使用 ClientWebSocket 类连接到 websocket。我正在使用 Unity 2017.4.10。不幸的是,C#/Mono 总是使用 TLS 1.0,但由于某种原因失败了。当我检查与 Wireshark 的连接时,我收到一个加密的警报数据包并且连接关闭。
我已经尝试通过设置来强制使用 TLS 1.2:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
但 WebSocket 仍会尝试与 TLS 1.0 连接。
当连接到 wss://echo.websocket.org 时它可以工作,因为 websocket.org 只支持 TLS 1.2。不幸的是,我的提供商仍然支持 TLS 1.0 1.1 和 1.2。
无论我尝试什么,HttpWebRequest 和 ClientWebSocket 类始终使用 TLS 1.0。
我知道使用了 TLS 1.0,因为 Wireshark 和 Fiddler 这么说。
【问题讨论】:
标签: c# .net unity3d websocket mono