Пре покретања 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 кроз асинхрони животни циклус апликације; задржите URL чворишта као одредиште. За дозвољени тест јавног чворишта без конфигурисаних прокси акредитива листа HTTP проксија нуди кандидате HTTP посредника.

Поставка транспортаГде се прокси примењује
Подразумевано понашање везеHttpConnectionOptions.Proxy бира посредника; подразумевани WebSocket транспорт у .NET 8 такође га додељује ClientWebSocketOptions
HttpMessageHandlerFactoryПрилагођава HTTP обраду, не WebSocket везе
Достављени WebSocketFactoryпоседује сопствено понашање стварања и мора да примени потребну руту

Успешно преговарање не доказује да је каснији WebSocket тунел прихваћен. Ако прилагођени WebSocketFactory користи .NET ClientWebSocket, конфигуришите прокси тог сокета пре повезивања. Читајте дијагностику транспорта за последњи завршени корак и прегледајте и сваки намерни резервни транспорт.

Старији ASP.NET SignalR примери који постављају Connection.Proxy припадају другој генерацији. Уз HubConnectionBuilder држите прокси уз остале WithUrl опције транспорта уместо конфигурисања неповезаног HTTP захтева.

Повезани чланци