Tetapkan proksi klien ASP.NET Core SignalR sebelum permulaan
Konfigurasikan klien ASP.NET Core SignalR melalui HttpConnectionOptions supaya rundingan dan pengangkutan yang dipilih mempunyai laluan yang dimaksudkan.
Sebelum memulakan klien ASP.NET Core SignalR, konfigurasikan pilihan sambungannya:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Coretan ini menggunakan klien SignalR moden dan System.Net. Uruskan connection sepanjang kitaran hayat async aplikasi; kekalkan URL hab sebagai destinasi. Untuk ujian hab awam yang dibenarkan tanpa kelayakan proksi dikonfigurasikan, senarai proksi HTTP membekalkan calon perantara HTTP.
| Persediaan pengangkutan | Di mana proksi terpakai |
|---|---|
| Tingkah laku sambungan lalai | HttpConnectionOptions.Proxy memilih perantara; pengangkutan WebSocket lalai .NET 8 juga menetapkannya kepada ClientWebSocketOptions |
HttpMessageHandlerFactory | Menyesuaikan pengendalian HTTP, bukan sambungan WebSocket |
Satu WebSocketFactory | yang dibekalkan memiliki tingkah laku penciptaannya sendiri dan mesti menggunakan laluan yang diperlukan |
Rundingan yang berjaya tidak membuktikan bahawa terowong WebSocket kemudiannya diterima. Jika WebSocketFactory tersuai menggunakan .NET ClientWebSocket, konfigurasikan proksi soket itu sebelum menyambung. Baca diagnostik pengangkutan untuk langkah terakhir yang selesai dan periksa juga mana-mana pengangkutan sandaran yang disengajakan.
Contoh ASP.NET SignalR yang lebih lama yang menetapkan Connection.Proxy tergolong dalam generasi lain. Dengan HubConnectionBuilder, kekalkan proksi bersama pilihan WithUrl pengangkutan lain dan bukannya mengkonfigurasi permintaan HTTP yang tidak berkaitan.