Set proxy for ein ASP.NET Core SignalR-klient før oppstart
Konfigurer ein ASP.NET Core SignalR-klient via HttpConnectionOptions slik at forhandlinga og den valde transporten følgjer den tiltenkte ruta.
Før du startar ein ASP.NET Core SignalR-klient, konfigurer tilkoplingsvala:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Dette utdraget brukar den moderne SignalR-klienten og System.Net. Administrer connection gjennom den asynkrone livssyklusen til applikasjonen; hald hub-URL-en som mål. For ein tillaten offentleg hub-test utan konfigurerte proxy-legitimasjonar leverer HTTP-proxylista kandidat-HTTP-mellomledd.
| Transportoppsett | Kvar proxyen gjeld |
|---|---|
| Standard tilkoplingsåtferd | HttpConnectionOptions.Proxy vel mellomleddet; .NET 8 sin standard WebSocket-transport tildeler det òg til ClientWebSocketOptions |
HttpMessageHandlerFactory | Tilpassar HTTP-handtering, ikkje WebSocket-tilkoplingar |
Ein medfølgjande WebSocketFactory | eig sin eigen opprettingsåtferd og må bruke den påkravde ruta |
Ei vellukka forhandling bevisar ikkje at den seinare WebSocket-tunnelen vart godteken. Viss ein tilpassa WebSocketFactory brukar .NET ClientWebSocket, konfigurer proxyen for den sockelen før du koplar til. Les transportdiagnostikk for det siste fullførte steget, og undersøk òg kvar medviten reserveløysing.
Eldre ASP.NET SignalR-døme som set Connection.Proxy høyrer til ei anna generasjon. Med HubConnectionBuilder held du proxyen saman med dei andre WithUrl transportvala i staden for å konfigurere ein urelatert HTTP-førespurnad.