Saya memiliki aplikasi dotnet core signalR pada layanan kubernetes. Selain itu, memungkinkan layanan enkripsi ingress memberi saya sertifikat SSL.
Saya bisa mendapatkan situs web di bawah Mari mengenkripsi sertifikat dan semuanya tampak valid.
Jika saya ingin menghubungkan signalR dengan protokol wss, setiap 2 detik koneksi terputus.
Kesalahannya adalah:
{"error":"Handshake was canceled."}
The connection was terminated cleanly with status code 1000 (NORMAL).
Log server adalah:
info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
Request starting HTTP/1.1 GET http://DOMAIN/ChatHub
dbug: Microsoft.AspNetCore.Http.Connections.Internal.HttpConnectionManager[1]
New connection XPqUHoK9b4PAeF_bKwQtIg created.
dbug: Microsoft.AspNetCore.Http.Connections.Internal.HttpConnectionDispatcher[4]
Establishing new connection.
dbug: Microsoft.AspNetCore.SignalR.HubConnectionHandler[5]
OnConnectedAsync started.
dbug: Microsoft.AspNetCore.Http.Connections.Internal.Transports.WebSocketsTransport[1]
Socket opened using Sub-Protocol: '(null)'.
dbug: Microsoft.AspNetCore.SignalR.HubConnectionContext[2]
Handshake was canceled.
dbug: Microsoft.AspNetCore.Http.Connections.Internal.Transports.WebSocketsTransport[7]
Waiting for the client to close the socket.
dbug: Microsoft.AspNetCore.Http.Connections.Internal.Transports.WebSocketsTransport[2]
Socket closed.
dbug: Microsoft.AspNetCore.Http.Connections.Internal.HttpConnectionManager[2]
Removing connection XPqUHoK9b4PAeF_bKwQtIg from the list of connections.
Versi Aplikasi:
netcoreapp2.2
Microsoft.AspNet.SignalR -v 2.4.0
Saya juga mencoba koneksi websocket murni tetapi tetap sama. Bagaimana cara mengatasi masalah ini?
PS: Berhasil jika saya mendefinisikan sertifikat SSL fisik ke server kestrel.