Наладзьце проксі кліента ASP.NET Core SignalR перад запускам
Наладзьце кліент ASP.NET Core SignalR праз HttpConnectionOptions, каб яго перамовы і абраны транспарт мелі патрэбны маршрут.
Перад запускам кліента ASP.NET Core SignalR наладзьце параметры яго падключэння:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Гэты фрагмент выкарыстоўвае сучасны кліент SignalR і System.Net. Кіруйце connection праз асінхронны жыццёвы цыкл праграмы; пакіньце адрас hub як пункт прызначэння. Для дазволенага тэсту публічнага hub без наладжаных уліковых даных проксі спіс HTTP-проксі прапануе патэнцыйных HTTP-пасрэднікаў.
| Налада транспарту | Дзе дзейнічае проксі |
|---|---|
| Паводзіны падключэння па змаўчанні | HttpConnectionOptions.Proxy выбірае пасрэдніка; транспарт WebSocket па змаўчанні ў .NET 8 таксама прызначае яго ClientWebSocketOptions |
HttpMessageHandlerFactory | Наладжвае апрацоўку HTTP, а не злучэнні WebSocket |
Перададзены WebSocketFactory | валодае сваімі паводзінамі стварэння і павінен ужыць патрэбны маршрут |
Паспяховыя перамовы не даказваюць, што наступны тунель WebSocket быў прыняты. Калі ўласны WebSocketFactory выкарыстоўвае .NET ClientWebSocket, наладзьце проксі гэтага сокета перад падключэннем. Чытайце дыягностыку транспарту для апошняга завершанага кроку і праверце таксама любы наўмысны рэзервовы транспарт.
Старыя прыклады ASP.NET SignalR, якія задаюць Connection.Proxy належаць іншаму пакаленню. З HubConnectionBuilder трымайце проксі разам з іншымі WithUrl параметрамі транспарту, а не наладжвайце непатрэбны HTTP-запыт.