Prije pokretanja ASP.NET Core SignalR klijenta konfigurirajte njegove opcije veze:

var connection = new HubConnectionBuilder()
    .WithUrl("https://events.example/hub", options =>
    {
        options.Proxy = new WebProxy("http://proxy.example:8080");
    })
    .Build();

Ovaj isječak koristi moderni SignalR klijent i System.Net. Upravljajte connection kroz asinhroni životni ciklus aplikacije; zadržite URL huba kao odredište. Za dozvoljeni test javnog huba bez konfiguriranih proxy akreditiva lista HTTP proxyja nudi kandidatne HTTP posrednike.

Postavka transportaGde se proxy primenjuje
Podrazumevano ponašanje vezeHttpConnectionOptions.Proxy bira posrednika; podrazumevani WebSocket transport u .NET 8 takođe ga dodeljuje ClientWebSocketOptions
HttpMessageHandlerFactoryPrilagođava HTTP obradu, ne WebSocket veze
Dostavljeni WebSocketFactoryposeduje sopstveno ponašanje stvaranja i mora da primeni potrebnu rutu

Uspešno pregovaranje ne dokazuje da je kasniji WebSocket tunel prihvaćen. Ako prilagođeni WebSocketFactory koristi .NET ClientWebSocket, konfigurišite proxy tog socketa pre povezivanja. Čitajte dijagnostiku transporta za poslednji završeni korak i pregledajte i svaki namerni rezervni transport.

Stariji ASP.NET SignalR primeri koji postavljaju Connection.Proxy pripadaju drugoj generaciji. Uz HubConnectionBuilder držite proxy uz ostale WithUrl opcije transporta umesto konfigurisanja nepovezanog HTTP zahteva.

Povezani članci