Поставете го проксито на ASP.NET Core SignalR клиент пред стартување
Конфигурирајте ASP.NET Core SignalR клиент преку HttpConnectionOptions за неговото преговарање и избраниот транспорт да имаат предвидена рута.
Пред да стартувате ASP.NET Core SignalR клиент, конфигурирајте ги неговите опции за врска:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Овој фрагмент го користи современиот SignalR клиент и System.Net. Управувајте connection низ асинхрониот животен циклус на апликацијата; задржете ја URL-адресата на hub како одредиште. За дозволен тест на јавен hub без конфигурирани прокси акредитиви списокот со HTTP прокси нуди кандидат HTTP посредници.
| Поставување на транспортот | Каде се применува проксито |
|---|---|
| Стандардно однесување на врската | HttpConnectionOptions.Proxy го избира посредникот; стандардниот WebSocket транспорт во .NET 8 исто така го доделува на ClientWebSocketOptions |
HttpMessageHandlerFactory | Го прилагодува HTTP ракувањето, не WebSocket врските |
Доставен WebSocketFactory | поседува сопствено однесување при создавање и мора да ја примени потребната рута |
Успешното преговарање не докажува дека подоцнежниот WebSocket тунел е прифатен. Ако прилагоден WebSocketFactory користи .NET ClientWebSocket, конфигурирајте го проксито на тој сокет пред поврзување. Читајте транспортна дијагностика за последниот завршен чекор и прегледајте го и секој намерен резервен транспорт.
Постари ASP.NET SignalR примери што поставуваат Connection.Proxy припаѓаат на друга генерација. Со HubConnectionBuilder држете го проксито со другите WithUrl опции за транспорт наместо да конфигурирате неповрзано HTTP барање.