.NET

HttpClient & Networking

HttpClient, HttpClientFactory, request/response, hata yönetimi, retry policies, async kalıpları

20 mülakat soruları·
Mid-Level
1

HttpClient'ı doğrudan örneklemek yerine neden IHttpClientFactory kullanılmalı?

Cevap

IHttpClientFactory, HttpClient örneklerinin yaşam döngüsünü otomatik olarak yönetir ve socket exhaustion'ı önler. HttpClient'ı using bloğunda doğrudan örneklemek, disposal sonrasında bile açık kalan TIME_WAIT durumundaki bağlantı sorunlarına neden olabilir. IHttpClientFactory kullanmak ayrıca Polly ile dayanıklılık politikaları yapılandırmaya ve bağlantı havuzlamasını verimli şekilde yönetmeye olanak tanır.

2

Named Client ile Typed Client arasındaki temel fark nedir?

Cevap

Typed Client, HTTP çağrı mantığını bağımlılık enjeksiyonu olan özel bir sınıfta kapsüller; Named Client ise IHttpClientFactory.CreateClient(name) aracılığıyla alınır. Typed Client'lar daha iyi sorumluluk ayrımı sunar ve yapılandırma ile iş mantığını kapsülleyerek birim testlerini kolaylaştırır. Named Client'lar, karmaşık iş mantığı olmadan birden fazla farklı yapılandırmanın gerektiği basit durumlar için yararlıdır.

3

Bir uygulamadaki tüm HttpClient örnekleri için global bir timeout nasıl yapılandırılır?

Cevap

Timeout'u ConfigurePrimaryHttpMessageHandler aracılığıyla yapılandırmak, factory tarafından oluşturulan tüm istemcilere uygulanacak handler düzeyinde bir timeout tanımlamaya olanak tanır. Bu yaklaşım yapılandırmayı merkezileştirir ve kod tekrarını önler. Timeout'u her HttpClient'ta ayrı ayrı yapılandırmak da mümkündür ancak birden fazla yapılandırılmış istemcinin olduğu büyük bir uygulamada bunu sürdürmek zorlaşır.

4

Bir HTTP yanıtının gövdesini string olarak okumayı sağlayan metot hangisidir?

5

HttpClient pipeline'ında bir DelegatingHandler'ın rolü nedir?

+17 mülakat soruları

Bir sonraki mülakatın için .NET'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla