我可以使用安全 WebSocket (wss) 连接到本地 Windows 服务应用程序吗

Posted

技术标签:

【中文标题】我可以使用安全 WebSocket (wss) 连接到本地 Windows 服务应用程序吗【英文标题】:Can I connect to local windows service application with secure WebSocket (wss) 【发布时间】:2021-01-20 02:41:34 【问题描述】:

我可以使用安全 WebSocket (wss) 连接到本地 Windows 服务应用程序 (c#)

https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API/Writing_WebSocket_client_applications

要连接的 URL;这应该是 WebSocket 服务器将响应的 URL。这应该使用 URL 方案 wss://,虽然某些软件可能允许您使用不安全的 ws:// 进行本地连接。

【问题讨论】:

Can I connect to local windows service application (c#) with secure WebSocket (wss) - 可以,只要您的本地 Windows 服务应用程序配置为这样做 我在尝试 wss 时遇到错误,我的新帖子是 ***.com/questions/64220221/… 【参考方案1】:

我解决了

X509Certificate oCertificate = CertificateKontrol.GetCertificate();

 public class CertificateKontrol
    
        public static X509Certificate2 GetCertificate()
        
            try
                                    
                byte[] barySertifika = global::EImzaAt.Properties.Resources.cert;
                using (Stream stream = new MemoryStream(barySertifika))
                
                    return new X509Certificate2(ReadStream(stream), pwd);
                
            
            catch (System.Exception ex)
            
                throw new System.Exception("err");
            
        

        private static byte[] ReadStream(Stream input)
        
            byte[] buffer = new byte[16 * 1024];
            using (MemoryStream ms = new MemoryStream())
            
                int read;
                while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
                
                    ms.Write(buffer, 0, read);
                
                return ms.ToArray();
            
        
    

【讨论】:

以上是关于我可以使用安全 WebSocket (wss) 连接到本地 Windows 服务应用程序吗的主要内容,如果未能解决你的问题,请参考以下文章

WebSocket 安全本地主机连接

WebSocket 安全本地主机连接

内容安全策略拒绝连接到 Websocket 错误

WebSocket 连接到“wss://test.example.com:8090/”失败:WebSocket 打开握手超时

WebSocket 连接到“wss://mydomain.com/one/of/app/graphql”失败 - NestJS GraphQL、docker、nginx

C++ Asio 连接到 wss