Kabla ya kuanza mteja wa ASP.NET Core SignalR, sanidi chaguo za muunganisho:

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

Kipande hiki kinatumia mteja wa kisasa wa SignalR na System.Net. Dhibiti connection katika mzunguko wa maisha wa async wa programu; weka URL ya hub kama lengwa. Kwa jaribio la hub la umma lililoruhusiwa bila vitambulisho vya proksi vilivyosanidiwa, orodha ya proksi za HTTP hutoa waamuzi wa HTTP wanaowezekana.

Usanidi wa usafirishajiMahali proksi inatumika
Tabia ya muunganisho chaguo-msingiHttpConnectionOptions.Proxy huchagua mwamuzi; usafirishaji chaguo-msingi wa WebSocket wa .NET 8 pia huikabidhi kwa ClientWebSocketOptions
HttpMessageHandlerFactoryHubadilisha utunzaji wa HTTP, si miunganisho ya WebSocket
Kiwanda WebSocketFactorykilichotolewa kinamiliki tabia yake ya uundaji na lazima kitumie njia inayohitajika

Majadiliano yenye mafanikio hayathibitishi kwamba handaki la WebSocket la baadaye lilikubaliwa. Ikiwa WebSocketFactory maalum inatumia .NET ClientWebSocket, sanidi proksi ya socket hiyo kabla ya kuunganisha. Soma uchunguzi wa usafirishaji kwa hatua ya mwisho iliyokamilika na ukague pia usafirishaji wowote wa akiba uliokusudiwa.

Mifano ya zamani ya ASP.NET SignalR inayoweka Connection.Proxy ni ya kizazi kingine. Kwa HubConnectionBuilder, weka proksi pamoja na chaguo WithUrl zingine za usafirishaji badala ya kusanidi ombi la HTTP lisilohusiana.

Makala zinazohusiana