Мне нужно передать сетевые учетные данные для олицетворения пользователя домена во время выполнения приложения на основе конечного пользователя, использующего приложение. Я не смог выяснить, как сгенерировать HttpClient через Services.AddHttpClient и HttpClientFactory, в котором он привязан к отдельному пользователю.
var httpClientBuilder = services
.AddHttpClient<SomeHttpClint>()
.ConfigurePrimaryHttpMessageHandler(sp => new HttpClientHandler
{
AllowAutoRedirect = false,
UseCookies = false,
Credentials = new NetworkCredential("user", "pass", "domain")
});
Итак, мои вопросы таковы:
Можно ли использовать именованные или типизированные HttpClientFactories для генерации HttpClients, которые будут представлять отдельного пользователя? Или есть лучшее решение для создания группы HttpClients, привязанных к отдельным пользователям?
Можно ли получить доступ к фабрике http-клиентов вне внедрения ее в контроллер, например, типа Middleware?