Áður en þú ræsir ASP.NET Core SignalR-biðil skaltu stilla tengimöguleikana:

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

Þetta brot notar nútíma SignalR-biðilinn og System.Net. Stýrðu connection í gegnum async lífsferil forritsins; haltu hub-slóðinni sem áfangastað. Fyrir leyfilegt próf á opinberu hub án stilltra proxy-skírteina veitir HTTP-proxylistinn hugsanlega HTTP-milliliði.

Uppsetning flutningsHvar proxyið gildir
Sjálfgefin tengihegðunHttpConnectionOptions.Proxy velur milliliðinn; sjálfgefinn WebSocket-flutningur í .NET 8 úthlutar því einnig á ClientWebSocketOptions
HttpMessageHandlerFactorySérsníður HTTP-meðhöndlun, ekki WebSocket-tengingar
Eitt veitt WebSocketFactoryá sér eigin stofnunarhegðun og verður að beita tilskyldu leiðinni

Árangursríkar samningaviðræður sanna ekki að síðari WebSocket-göngin hafi verið samþykkt. Ef sérsniðið WebSocketFactory notar .NET ClientWebSocket, stilltu proxy þess sockets fyrir tengingu. Lestu flutningsgreiningu fyrir síðasta lokna skref og skoðaðu einnig hvers kyns viljandi varaleið.

Eldri ASP.NET SignalR-dæmi sem stilla Connection.Proxy tilheyra annarri kynslóð. Með HubConnectionBuilder skaltu halda proxyinu með hinum WithUrl flutningsvalkostunum í stað þess að stilla ótengda HTTP-beiðni.

Tengdir greinar