Configuración de proxy de ServiceStack HttpUtils en .NET 6+
Configure el proxy del cliente compartido de .NET 6+ durante la inicialización; cambiar la fábrica después no reemplaza un cliente existente.
En las compilaciones de ServiceStack para .NET 6+, HTTP Utils crea un HttpClient compartido y diferido. Establezca su fábrica de controlador durante la inicialización de la aplicación, antes de la primera llamada al asistente:
ServiceStack.HttpUtils.HttpClientHandlerFactory = () =>
new System.Net.Http.HttpClientHandler
{
UseProxy = true,
Proxy = new System.Net.WebProxy("http://proxy.example:8080"),
AutomaticDecompression =
System.Net.DecompressionMethods.Brotli |
System.Net.DecompressionMethods.Deflate |
System.Net.DecompressionMethods.GZip
};Si el cliente compartido ya existe, cambiar esta fábrica no lo reconfigura. Ese momento es la primera comprobación cuando una asignación posterior parece ineficaz. Se puede elegir un punto de conexión HTTP de la lista de proxies HTTP para una ruta pública antes de que se cree ese cliente compartido.
Para una cuenta de proxy, establezca WebProxy.Credentials mediante la configuración de la aplicación. HttpClientHandler.UseDefaultCredentials se refiere a la cuenta del servidor y no rellena automáticamente las credenciales de ese objeto proxy.
Un ejemplo antiguo de HttpWebRequest y requestFilter se dirige a la implementación anterior. En la forma más reciente, la configuración de la solicitud cubre los campos de la solicitud mientras el controlador se encarga del enrutamiento de la conexión.
Conserve una fábrica de cliente personalizado existente o el régimen de propiedad de la fábrica de cliente HTTP de la aplicación cuando ya esté instalado. Esta fábrica de controlador es una política compartida; las rutas no relacionadas simultáneas necesitan clientes con propiedad separada.