从javascript到C#WebSocketServer的WebSocket连接因wss失败

时间:2019-02-08 15:00:06

标签: c# websocket

我有一个网站,该网站应与C#WebSocketServer(.Net Standard 2.0)通信。

在我的网站上,我致电axis=1

C#WebSocketServer启动TCPListener并等待客户端(网站)并从客户端流中读取数据:

new WebSocket("ws://ipAddress:port/?SomeData");

在尝试使用安全连接并从网站TcpListener listener = new TcpListener(new IPEndPoint(this.IPAddress, this.Port)); listener.Start() TcpClient client = await listener.AcceptTcpClientAsync(); using (NetworkStream stream = client.GetStream()) { if (stream.DataAvailable) { byte[] bytes = new byte[client.Available]; stream.Read(bytes, 0, bytes.Length); string data = Encoding.UTF8.GetString(bytes); Console.WriteLine("Data: " + data); } } 拨打电话之前,此方法正常工作

然后将流中的数据加密,我无法对其解密(无法使用SSlStream)。

所以我尝试使用new WebSocket("wss://ipAddress:port/?SomeData");而不是HttpListener

TcpListener

这甚至适用于不安全的呼叫,但是当我尝试使用HttpListener listener = new HttpListener(); listener.Prefixes.Clear(); listener.Prefixes.Add(string.Format("http://*:{0}/", this.PortHttp.ToString())); listener.Prefixes.Add(string.Format("https://*:{0}/", this.PortHttps.ToString())); listener.Start(); HttpListenerContext client = await listener.GetContextAsync(); HttpListenerWebSocketContext context = await client.AcceptWebSocketAsync(null); 进行连接时,我现在在我的网站中看到一个错误: wss

我做错了什么?我该怎么做才能使其适用于不安全的电话?

(我认为WebSocket connection to 'wss://ipAddress:port/?SomeData' failed: Error in connection establishment: net::ERR_CONNECTION_RESET是一个很好的解决方案,但是我没有找到一种加密数据的方法-除了使用TcpListener之外还有其他方法吗?)

0 个答案:

没有答案