var client = clients.GetOrAdd(
    "proxy-east",
    "https://example.com",
    builder => builder.ConfigureInnerHandler(handler =>
        handler.Proxy = new WebProxy("http://203.0.113.10:8080")));

Aquí clients es el IFlurlClientCache de Flurl 4. Elija la ruta antes de la búsqueda y dé a su cliente reutilizable un nombre estable. Para las solicitudes públicas permitidas, la lista de proxies HTTP ofrece candidatos para la URL de WebProxy del controlador interno. Reutilizar proxy-east con un valor de proxy nuevo no es una reconfiguración por solicitud del cliente que ya se conserva allí.

Use la API de controlador que corresponda al tipo elegido por la aplicación; Flurl documenta otra ruta de configuración para SocketsHttpHandler.

Mantenga la ruta seleccionada en los metadatos de la operación y llame a través de su cliente correspondiente. Una elección aleatoria cada vez que se consulta una fábrica puede, de lo contrario, dar a una misma tarea lógica políticas incoherentes.

Sea dueño de la caché para un ámbito de aplicación y limite su crecimiento. Una lista temporal de proxies cambiante puede acumular clientes y recursos; use identificadores de ruta seguros para nombres/registros en lugar de contraseñas incrustadas.

Esto usa la interfaz de caché con nombre de Flurl 4 en lugar de copiar infraestructura de fábrica personalizada antigua o cambiar un controlador vivo durante otra solicitud.

Artículos relacionados