我正在尝试使用Fleck lib建立TLS / SSL websocket连接。
https://github.com/statianzo/Fleck(0.9.8.25)
现在我得到了服务器的启动 但是当客户端连接时,我收到以下消息。
28-02-2014 19:16:15 [Info] Server started at wss://localhost:8081 28-02-2014 19:18:51 [Debug] Client connected from 127.0.0.1:62543 28-02-2014 19:18:51 [Debug] Authenticating Secure Connection 28-02-2014 19:18:52 [Debug] 0 bytes read. Closing.
任何人都知道我做错了什么?
浏览器:Chrome,版本:33.0.1750.117
//示例代码。
FleckLog.Level = LogLevel.Debug;
var allSockets = new List<IWebSocketConnection>();
var server = new WebSocketServer("wss://localhost:8081");
server.Certificate = new X509Certificate2(@"CRT.pfx", "Pwd");
server.Start(socket =>
{
socket.OnOpen = () =>
{
Console.WriteLine("Open!");
allSockets.Add(socket);
};
socket.OnClose = () =>
{
Console.WriteLine("Close!");
allSockets.Remove(socket);
};
socket.OnMessage = message =>
{
foreach (var user in allSockets.ToList())
{
if(user.ConnectionInfo.Id != socket.ConnectionInfo.Id){
user.Send(message);
}
}
};
});
var input = Console.ReadLine();
while (input != "exit")
{
foreach (var socket in allSockets.ToList())
{
socket.Send(input);
}
input = Console.ReadLine();
}
答案 0 :(得分:0)
证书是否由浏览器信任的CA签名?如果没有,您使用Chrome打开的网页必须使用HTTPS,以便系统可以提示您接受证书,否则连接将失败。
即使这样做不起作用,请尝试使用WebSocketListener并告诉我你得到的错误。
我发现调试WSS的一些问题:
尝试使用自签名证书,看看它是否有效。