Я пытаюсь понять, как HttpClient
было реализовано для Captcha в Nop Commerce и ради тестируемости, как создание нового экземпляра HttpClient
было реализовано в проекте Nop Commerce.
Я сталкивался с ValidateCaptchaAttribute
и ValidateCaptchaFilter
, и я вижу, что HttpClient был обернут внутри CaptchaHttpClient
класса
но я не понимаю, откуда CaptchaHttpClient
получает зависимость для HttpClient
и откуда вызывается конструктор класса CaptchaHttpClient
.
Внутри ServiceCollectionExtensions
класс Я вижу ниже код:
public static void AddNopHttpClients(this IServiceCollection services)
{
//default client
services.AddHttpClient(NopHttpDefaults.DefaultHttpClient).WithProxy();
//client to request current store
services.AddHttpClient<StoreHttpClient>();
//client to request nopCommerce official site
services.AddHttpClient<NopHttpClient>().WithProxy();
//client to request reCAPTCHA service
services.AddHttpClient<CaptchaHttpClient>().WithProxy();
}
Но я не вижу, где создается объект HttpClient:
var client = new HttpClient() // Where this is done?
Возможно, я что-то упустил?
Nop Commerce Version = 4.20