Я пытаюсь отправить данные на веб-страницу aspx из веб-сокетов. он работает нормально для веб-страниц HTTP, но HTTPS-страниц он дает «Соединение WebSocket с» wss: //0.0.0.0: 8080 / «не удалось: ошибка тайм-аута открытия WebSocket» ..
Вот мой веб-сокет код
List<IWebSocketConnection> sockets = new List<IWebSocketConnection>();
Fleck.WebSocketServer server = new Fleck.WebSocketServer("wss://127.0.0.1:8181");
public Main()
{
InitializeComponent();
btnConnect.Text = "Start";
}
public void Start()
{
server.Start(socket =>
{
socket.OnOpen = () =>
{
Console.WriteLine("Connection open.");
sockets.Add(socket);
};
socket.OnClose = () =>
{
Console.WriteLine("Connection closed.");
sockets.Remove(socket);
};
socket.OnMessage = message =>
{
Console.WriteLine("Client Says: " + message);
sockets.ToList().ForEach(s => s.Send(" client says: " + message));
};
});
btnConnect.Text = "Stop";
}
private void btnSend_Click(object sender, EventArgs e)
{
try
{
sockets.ToList().ForEach(s => s.Send(tbReply.Text));
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void btnConnect_Click(object sender, EventArgs e)
{
try
{
if (btnConnect.Text == "Stop")
{
server.Dispose();
btnConnect.Text = "Start";
return;
}
Start();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
вот мой код веб-клиента
<script type="text/javascript">
function WebSocketTest() {
if ("WebSocket" in window) {
var ws = new WebSocket("wss://127.0.0.1:8181/echo");
ws.onopen = function() {
ws.send("Client Connected!");
alert("Connected!");
};
ws.onmessage = function (evt) {
var received_msg = evt.data;
var label = document.getElementById("lblMessage");
label.innerText = received_msg;
};
ws.onclose = function() {
alert("Connection is closed...");
};
} else {
alert("WebSocket NOT supported by your Browser!");
}
}
</script>
Когда происходит изменение wss в веб-сокете и веб-клиенте, он работает нормально. Но я хочу работать и в HTTPS.