ASP.NET Core SignalR müştərisinin proxy-sini işə salmazdan əvvəl təyin edin
ASP.NET Core SignalR müştərisini HttpConnectionOptions vasitəsilə konfiqurasiya edin ki, onun danışıqları və seçilmiş transportu nəzərdə tutulan marşruta malik olsun.
ASP.NET Core SignalR müştərisini işə salmazdan əvvəl onun bağlantı parametrlərini konfiqurasiya edin:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Bu fraqment müasir SignalR müştərisindən və System.Net-dən istifadə edir. İdarə edin connection tətbiqin async həyat dövrü ərzində; hub URL-ni təyinat kimi saxlayın. Proxy etimadnaməsi konfiqurasiya olunmadan icazəli ictimai hub sınağı üçün HTTP proxy siyahısı namizəd HTTP vasitəçiləri təqdim edir.
| Transport quraşdırması | Proxy harada tətbiq olunur |
|---|---|
| Defolt bağlantı davranışı | HttpConnectionOptions.Proxy vasitəçini seçir; .NET 8-in defolt WebSocket transportu onu ClientWebSocketOptions-a da təyin edir |
HttpMessageHandlerFactory | HTTP emalını fərdiləşdirir, WebSocket bağlantılarını yox |
Təqdim edilmiş WebSocketFactory | yaradılma davranışına sahibdir və tələb olunan marşrutu tətbiq etməlidir |
Uğurlu danışıq sonrakı WebSocket tunelinin qəbul edildiyini sübut etmir. Fərdi WebSocketFactory .NET ClientWebSocket istifadə edirsə, həmin socket-in proxy-sini qoşulmazdan əvvəl konfiqurasiya edin. Son tamamlanmış addım üçün transport diaqnostikasını oxuyun və hər hansı qəsdən edilmiş ehtiyat transportu da yoxlayın.
Köhnə ASP.NET SignalR nümunələri Connection.Proxy təyin edilməsi başqa nəslə aiddir. HubConnectionBuilder ilə proxy-ni digər WithUrl transport parametrləri ilə saxlayın, əlaqəsiz HTTP sorğusu konfiqurasiya etməyin.