Az ASP.NET Core SignalR ügyfél proxyjának beállítása indítás előtt
Konfigurálja az ASP.NET Core SignalR ügyfelet HttpConnectionOptions használatával, hogy az egyeztetés és a választott átvitel a kívánt útvonalon haladjon.
Az ASP.NET Core SignalR ügyfél indítása előtt konfigurálja a kapcsolati beállításokat:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Ez a részlet a modern SignalR ügyfelet és a System.Net-et használja. Kezelje connection az alkalmazás aszinkron életciklusa során; tartsa meg a hub URL-t célként. Engedélyezett nyilvános hub-teszthez, beállított proxy hitelesítő adatok nélkül a HTTP proxy lista jelölt HTTP közvetítőket kínál.
| Átvitel beállítása | Hol érvényesül a proxy |
|---|---|
| Alapértelmezett kapcsolati viselkedés | HttpConnectionOptions.Proxy kiválasztja a közvetítőt; a .NET 8 alapértelmezett WebSocket átvitele is hozzárendeli a ClientWebSocketOptions-hoz |
HttpMessageHandlerFactory | A HTTP kezelést szabja testre, nem a WebSocket kapcsolatokat |
Egy megadott WebSocketFactory | saját létrehozási viselkedéssel rendelkezik, és alkalmaznia kell a szükséges útvonalat |
A sikeres egyeztetés nem bizonyítja, hogy a későbbi WebSocket alagutat elfogadták. Ha egy egyéni WebSocketFactory .NET ClientWebSocketet használ, a csatlakozás előtt konfigurálja annak a socketnek a proxyját. Olvassa el az utolsó befejezett lépés átviteli diagnosztikáját, és vizsgálja meg a szándékos tartalék átvitelt is.
A régebbi ASP.NET SignalR példák, amelyek Connection.Proxy beállítást végeznek, más generációhoz tartoznak. A HubConnectionBuilderrel tartsa a proxyt a többi WithUrl átviteli beállításnál, ahelyett hogy egy nem kapcsolódó HTTP-kérést konfigurálna.