50 Asp.Net Web API Röportaj Soruları ve Cevapları (2025)
Yeni Öğrenciler için Asp.Net Web API Mülakat Soruları ve Cevapları
1) Web API'si nedir?
WebAPI, HTTP hizmetlerini oluşturmanıza/geliştirmenize yardımcı olan bir çerçevedir.
2) Web API'si neden gereklidir? WCF kullanarak RESTful hizmetlerini kullanmak mümkün mü?
Evet, WCF ile RESTful hizmetlerini geliştirmeye devam edebiliriz. Ancak kullanıcıları RESTful hizmetleri yerine Web API kullanmaya yönlendiren iki ana neden vardır.
- Web API, RESTful hizmetlerinin geliştirilmesinde TDD (Test Verilerine Dayalı) yaklaşımını artırır.
- WCF'de RESTful hizmetleri geliştirmek istiyorsak, web API kullanarak RESTful hizmetleri geliştirmek için kesinlikle çok sayıda yapılandırma ayarına, URI şablonuna, sözleşmeye ve uç noktaya ihtiyacınız vardır.
👉 Ücretsiz PDF İndir: Asp.Net Web API Röportaj Soruları ve Cevapları >>
3) Neden Web API'yi seçmelisiniz?
- Basit, SOAP tabanlı olmayan HTTP Hizmetleri oluşturmak için kullanılır
- Aynı zamanda Web API ile oluşturulması kolay bir yöntemdir. WCF REST Hizmetleri ile
- HTTP'ye dayalıdır ve REST-ful bir şekilde tanımlanması, kullanıma sunulması ve tüketilmesi kolaydır.
- Hafif bir mimariye sahip olup akıllı telefonlar gibi sınırlı bant genişliğine sahip cihazlar için idealdir.
4) ASP.NET Web API'sinin WCF'nin yerini alması doğru mu?
ASP.NET Web API'sinin WCF'nin yerini aldığı hiç de doğru değil. Aslında bu, SOAP tabanlı olmayan hizmetler (ör. düz XML veya JSON dizesi) oluşturmanın başka bir yoludur.
5) Web API'nin avantajları nelerdir?
Web API'nin avantajları şunlardır:
- OVeri
- Filtre
- İçerik Müzakereleri
- Kendi Kendini Barındırma
- Yönlendirme
- Model Bağlamaları
6) Web API'sinde desteklenen ana dönüş türleri nelerdir?
Bir Web API denetleyicisi eylemi aşağıdaki değerleri döndürebilir:
- Geçersiz – Boş içerik döndürecektir
- HttpYanıtMesajı – Yanıtı bir HTTP mesajına dönüştürecektir.
- IHttpActionSonuç – dahili olarak HttpResponseMessage oluşturmak için ExecuteAsync'i çağırır
- Diğer tür – Serileştirilmiş dönüş değerini yanıt gövdesine yazabilirsiniz
7) Web API hangi protokolü destekliyor?
Web Uygulaması HTTP protokolünü destekler.
8) Hangi .NET çerçevesi Web API'sini destekler?
NET 4.0 ve üzeri sürüm web API'sini destekler.
9) Web API, JSON serileştirmesi için aşağıdakilerden hangisini kullanır?
Web API, JSON serileştirmesi için Json.NET kitaplığını kullanır.
10) Varsayılan olarak, Web API tüm yakalanmamış istisnalar için aşağıdaki durum kodlarından hangisiyle HTTP yanıtı gönderir?
500 - Dahili Sunucu Hatası
Deneyimlilere Yönelik Asp.Net Web API Mülakat Soruları
11) Web API'de “Diğer İade Tipleri”nin en büyük dezavantajı nedir?
Bu yaklaşımın en büyük dezavantajı 404 hatası gibi bir hata kodunu doğrudan döndürememenizdir.
12) HtmlResponseMessage'ı nasıl oluşturursunuz?
Bunu yapmanın yolu şu şekildedir:
public class TestController : ApiController { public HttpResponseMessage Get() { HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, "value"); response.Content = new StringContent("Testing", Encoding.Unicode); response.Headers.CacheControl = new CacheControlHeaderValue() { MaxAge = TimeSpan.FromMinutes(20) }; return response; } }
13) Web API Yönlendirmesi nedir?
Yönlendirme MVC'deki gibi kalıp eşleştirmedir.
Tüm rotalar Rota Tablolarına kayıtlıdır.
Örneğin:
Routes.MapHttpRoute( Name: "ExampleWebAPIRoute", routeTemplate: “api/{controller}/{id} defaults: new { id = RouteParameter.Optional}
14) SABUN Nedir?
SOAP, web hizmeti etkileşimlerinde kullanılan bir XML mesaj formatıdır. HTTP veya JMS üzerinden mesaj gönderilmesine izin verir, ancak diğer aktarım protokolleri de kullanılabilir. Aynı zamanda bilgisayarlar arasında bilgi alışverişini sağlayan XML tabanlı bir mesajlaşma protokolüdür.
15) Web API'sinde REST kullanmanın faydası nedir?
REST, istemci ve sunucu arasında daha az veri aktarımı yapmak için kullanılır, bu da onu mobil uygulamalarda kullanmak için ideal kılar. Web API ayrıca HTTP protokolünü de destekler. Bu nedenle, iletişim için HTTP fiillerinin geleneksel yolunu yeniden sunar.
16) Web API'yi ASP.NET Web Form ile nasıl kullanabiliriz?
Web API'si ASP.NET Web Form ile kullanılabilir
Üç basit adımda gerçekleştirilebilir:
- Bir Web API Denetleyicisi oluşturun,
- Global.asax'ın Application_Start yöntemine bir yönlendirme tablosu ekleyin
- Daha sonra jQuery AJAX Call to Web API metodunu yapıp veri almanız gerekiyor.
17) Web API'sine Erişimi Belirli HTTP Fiili ile nasıl sınırlayabilirsiniz?
Nitelik programlama önemli bir rol oynar. Belirli bir HTTP yöntemi kullanılarak çağrılacak bir ASP.NET Web API yöntemine erişimi kısıtlamak kolaydır.
18) Web API'yi ASP.NET Web Form ile kullanabilir misiniz?
Evet, Web API'yi ASP.Net web formuyla kullanmak mümkündür. ASP.NET MVC çerçevesiyle birlikte geldiği için. Ancak şununla kullanılabilir: ASP.NET Web Formu.
19) ASP.NET Web API Eylemi için takma ad nasıl atanabilir?
Web API eylemi için takma ad verebiliriz. ASP.NET MVC “ActionName” niteliğini aşağıdaki gibi kullanarak:
[HttpPost] [ActionName("SaveStudentInfo")] public void UpdateStudent(Student aStudent) { StudentRepository.AddStudent(aStudent); }
20) TestApi'nin anlamı nedir?
TestApi, API'lerden oluşan bir yardımcı program kitaplığıdır. Geliştirici bu kütüphaneyi kullanarak test cihazı oluşturabilir test araçları ve veri yapısını ve algoritmaları kullanan bir .NET uygulaması için otomatik testler.
5 Yıllık Deneyim için Web API Mülakat Soruları
21) İstisna filtrelerini açıklayın?
İstisnalar işlenmediğinde ve denetleyici meth'inden atıldığında yürütülecektir.oD. İstisnanın nedeni herhangi bir şey olabilir. İstisna filtreleri “IExceptionFilter” arayüzünü uygulayacaktır.
22) Eylemden istisna filtresini nasıl kaydedebiliriz?
Aşağıdaki kodu kullanarak eylemden istisna filtresini kaydedebiliriz:
[NotImplExceptionFilter] public TestCustomer GetMyTestCustomer(int custid) { //write the code }
23) ASP.NET Web API yönteminden Görünümü nasıl geri döndürebilirsiniz?
Hayır, ASP.NET Web API Yönteminden bir görünüm döndüremiyoruz. Web API, ham verileri işleyen HTTP hizmetleri oluşturur. Ancak ASP.NET MVC uygulamasında da mümkündür.
24) İstisna filtresi genel olarak nasıl kaydedilir?
Aşağıdaki kodu kullanarak istisna filtresini global olarak kaydetmek mümkündür:
GlobalConfiguration.Configuration.Filters.Add(yeni
MyTestCustomerStore.NotImplExceptionFilterAttribute());
25) REST ve RESTFUL nedir açıklayınız?
REST Temsili Durum Transferini temsil eder; bir web uygulaması yazmanın tamamen yeni bir yönüdür.
RESTFUL: REST mimari konseptlerini uygulayarak yazılmış bir terimdir ve RESTful servisleri olarak adlandırılır. Sistem kaynaklarına ve kaynağın durumunun HTTP protokolü üzerinden nasıl taşınması gerektiğine odaklanır.
26) Bana Web API Yönlendirmesine ilişkin bir örnek verir misiniz?
Config.Routes.MapHttpRoute( name: "MyRoute,"//route name routeTemplate: "api/{controller}/{action}/{id}",//as you can see "API" is at the beginning. defaults: new { id = RouteParameter.Optional } );
27) Web API'sindeki hataları nasıl halledebilirsiniz?
Hataları işlemek için Web API'sinde çeşitli sınıflar mevcuttur. Bunlar HttpError, İstisna Filtreleri, HttpResponseException ve İstisna Filtrelerinin Kaydedilmesidir.
28) ASP.NET Web API 2.0 ile hangi Yeni Özellikler geliyor?
ASP.NET Web API framework v2.0'ın en son özellikleri aşağıdaki gibidir:
- Özellik Yönlendirme
- Kaynaklar Arası Kaynak Paylaşımı
- Harici Kimlik Doğrulama
- Açık Web Arayüzü NET
- HttpActionResult
- Web API OData'sı
29) Erişim yöntemlerini Web API'deki belirli HTTP fiillerine nasıl kısıtlayabilirsiniz?
Nitelikler (HTTP fiilleri gibi) yardımıyla Web API'de erişim kısıtlamaları uygulamak mümkündür.
HTTP fiillerini erişimi kısıtlamaya yönelik bir nitelik olarak tanımlamak mümkündür.
Örnek:
[HttpPost] public void Method1(Class obj) { //logic
30) Web API'de birden fazla karmaşık tip nasıl geçirilebilir?
Web API'de karmaşık türleri geçirmenin iki yöntemi –
ArrayList ve Newtonsoft dizisini kullanma
31) Web API'sinde ArrayList'i geçirmek için bir kod yazar mısınız?
ArrayList paramList = new ArrayList(); Category c = new Category { CategoryId = 1, CategoryName =“MobilePhones”}; Product p = new Product { Productcode = 1, Name = “MotoG”, Price = 15500, CategoryID = 1 }; paramList.Add(c); paramList.Add(p);
32) Web API'yi geliştirmek veya test etmek için kullanılan araçları veya API'yi adlandırın?
REST API'lerine yönelik web hizmetlerine yönelik test araçları şunları içerir:
- Jersey API'si
- CFX
- eksen
- restlet
33) DİNLENME nedir?
REST mimari bir stildir. Ölçeklenebilir hizmetler oluşturmak için tanımlanmış yönergeleri vardır. HTTP protokolüyle birlikte kullanılan REST, GET, PUT, POST ve DELETE fiillerini kullanır.
34) Web API'nin birim testi nasıl yapılır?
Aşağıdaki gibi Web API araçlarını kullanarak Birim testi gerçekleştirebiliriz: Fiddler.
Burada, kullanıyorsanız yapmanız gereken bazı ayarlar verilmiştir.
Fiddler –Oluştur Sekmesi -> İstek Başlıklarını Girin -> İstek Gövdesini girin ve çalıştırın
35) Web API'sinde belirli HTTP fiilleri içeren yöntemlere erişimi nasıl kısıtlayabiliriz?
Öznitelik programlama bu işlevsellik için yaygın olarak kullanılmaktadır. Web API ayrıca belirli HTTP fiillerinin yardımıyla çağrı yöntemlerine erişimin kısıtlanmasına da olanak tanır. HTTP fiillerini nitelik üzerinden yöntem olarak tanımlamak da mümkündür.
10+ Yıllık Deneyim için Web API Mülakat Soruları
36) DelegatingHandler'ın kullanımı nedir?
DelegatingHandler, Web API'sinde yönlendirmeden önce Mesaj İşleyicilerini temsil etmek için kullanılır.
37) Eylemden istisna filtresini nasıl kaydedebiliriz?
Aşağıdaki kodu kullanarak eylemden istisna filtresini kaydedebiliriz
[NotImplExceptionFilter] public TestCust GetMyTestCust (int custno) { //write the code }
38) HttpError'dan 404 hatasını nasıl döndürebileceğimizi gösteren kod parçasını bana söyleyin.
HttpError'dan 404 hatası döndürme kodu
string message = string.Format(“TestCustomer id = {0} not found”, customerid);
return Request.CreateErrorResponse(HttpStatusCode.NotFound, message);
39) Denetleyiciden istisna filtrelerini kaydetmek için kod pasajını açıklayın?
[NotImplExceptionFilter] public class TestCustController : Controller { //Your code goes here }
40) Web API hangi protokolü destekliyor?
Web Uygulaması HTTP protokolünü destekler
41) Aşağıdakilerden hangisi .NET framework'ü Web API'yi destekler?
Web API'si NET 4.0 sürümü tarafından desteklenir
42) Web API, JSON serileştirmesi için hangi kütüphaneyi kullanıyor?
Web API, JSON serileştirmesi için Json.NET kitaplığını kullanır.
43) Varsayılan olarak, Web API tüm yakalanmamış istisnalar için aşağıdaki durum kodlarından hangisiyle HTTP yanıtı gönderir?
500 - Dahili Sunucu Hatası
44) Web API'sinde HttpError kullanarak hatayı giderme yöntemini açıklayın?
WEB API'sinde HttpError, hata bilgisini yanıt gövdesine atmak için kullanılır. Bununla birlikte “HttpRequestMessageExtension” içerisinde tanımlanan bir extension metodu olan “CreateErrorResponse” metodu da kullanılabilir.
45) İstisna filtresini global olarak nasıl kaydedebiliriz?
Aşağıdaki kodu kullanarak istisna filtresini global olarak kaydedebiliriz:
GlobalConfiguration.Configuration.Filters.Add (new MyTestCustomerStore.NotImplExceptionFilterAttribute());
46) Web API'sindeki hatalar nasıl ele alınır?
Hataları işlemek için Web API'sinde çeşitli sınıflar mevcuttur. Bunlar HttpError, HttpResponseException, İstisna Filtreleri, İstisna Filtrelerinin Kaydedilmesidir.
47) WebAPI'nin WCF'ye göre avantajı nedir?
WCF hizmetleri SOAP protokolünü kullanırken HTTP hiçbir zaman SOAP protokolünü kullanmaz. Bu nedenle WebAPI hizmetleri SOAP kullanılmadığından hafiftir. Ayrıca devam ettirme hizmetine aktarılan verileri de azaltır. Üstelik asla çok fazla konfigürasyona ihtiyaç duymaz. Bu nedenle istemci, HTTP fiillerini kullanarak hizmetle etkileşime girebilir.
48) MVC ve WebAPI arasındaki durum farkları
MVC çerçevesi, Kullanıcı Arayüzüne sahip uygulamalar geliştirmek için kullanılır. Bunun için görünümler bir kullanıcı arayüzü oluşturmak için kullanılabilir.
WebAPI, HTTP hizmetlerini geliştirmek için kullanılır. Diğer uygulamalara bu verileri getirmek için WebAPI yöntemleri de denilebilir.
49) WebAPI'yi kimler kullanabilir?
WebAPI, GET, PUT, DELETE, POST gibi HTTP fiillerini destekleyen herhangi bir istemci tarafından tüketilebilir. WebAPI hizmetleri herhangi bir yapılandırmaya ihtiyaç duymadığından herhangi bir istemci tarafından kullanılması çok kolaydır. Infract, Mobil cihazlar gibi taşınabilir cihazların bile WebAPI'yi kolayca tüketebilmesi, bu teknolojinin kesinlikle en büyük avantajıdır.
50) Web API'nin yalnızca JSON verilerini döndürdüğünden nasıl emin olabiliriz?
Web API'nin dönen nesneyi JSON biçimine serileştirmesini ve yalnızca JSON verisi döndürmesini sağlamak için. Bunun için herhangi bir MVC Web API Projesindeki WebApiConfig.cs sınıfına aşağıdaki kodu eklemelisiniz:
//JsonFormatter //MediaTypeHeaderValue Config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json")); 1 2 3 //JsonFormatter //MediaTypeHeaderValue Config.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"))
Bu mülakat soruları aynı zamanda yaşamınızda da yardımcı olacaktır.