50 Asp.Net Web API -haastattelun kysymystä ja vastausta (2025)
Asp.Net Web API haastattelukysymyksiä ja vastauksia Freshersille
1) Mikä on Web API?
WebAPI on kehys, joka auttaa sinua rakentamaan/kehittämään HTTP-palveluita.
2) Miksi Web API tarvitaan? Onko mahdollista käyttää RESTful-palveluita WCF:n avulla?
Kyllä, voimme edelleen kehittää RESTful-palveluita WCF:n kanssa. On kuitenkin kaksi pääasiallista syytä, jotka kehottavat käyttäjiä käyttämään Web API:ta RESTful-palvelujen sijaan.
- Web API lisää TDD (Test Data Driven) -lähestymistapaa RESTful-palveluiden kehittämisessä.
- Jos haluamme kehittää RESTful-palveluita WCF:ssä, tarvitset varmasti paljon konfigurointiasetuksia, URI-malleja, sopimuksia ja päätepisteitä RESTful-palveluiden kehittämiseen web API:n avulla.
👉 Ilmainen PDF-lataus: Asp.Net Web API haastattelukysymykset ja vastaukset >>
3) Miksi valita Web API?
- Sitä käytetään yksinkertaisten, ei-SOAP-pohjaisten HTTP-palveluiden luomiseen
- Se on myös helppo tapa luoda Web API:lla. WCF REST -palveluilla
- Se perustuu HTTP:hen ja on helppo määritellä, paljastaa ja kuluttaa REST-täydellä tavalla.
- Se on kevyt arkkitehtuuri ja sopii laitteille, joilla on rajoitettu kaistanleveys, kuten älypuhelimille.
4) Onko oikein, että ASP.NET Web API on korvannut WCF:n?
Ei ole ollenkaan totta, että ASP.NET Web API on korvannut WCF:n. Itse asiassa se on toinen tapa rakentaa ei-SOAP-pohjaisia palveluita, eli tavallista XML- tai JSON-merkkijonoa.
5) Mitkä ovat Web API:n edut?
Web API:n edut ovat:
- OData
- Suodattimet
- Sisältöneuvottelut
- Itseisännöinti
- Reititys
- Mallin siteet
6) Mitä tärkeimpiä palautustyyppejä Web API tukee?
Web API -ohjaintoiminto voi palauttaa seuraavat arvot:
- mitätön – Se palauttaa tyhjän sisällön
- HttpResponseMessage – Se muuntaa vastauksen HTTP-viestiksi.
- IHttpActionResult – kutsuu sisäisesti ExecuteAsynciä luodakseen HttpResponseMessage-viestin
- Muunlaiset – Voit kirjoittaa sarjoitetun palautusarvon vastauksen runkoon
7) Mitä protokollaa Web API tukee?
Web App tukee HTTP-protokollaa.
8) Mikä .NET-kehys tukee Web API:ta?
NET 4.0 ja uudemmat versiot tukevat verkkosovellusliittymää.
9) Mitä seuraavista avoimen lähdekoodin kirjastoista Web API käyttää JSON-sarjaan?
Web API käyttää Json.NET-kirjastoa JSON-sarjoitukseen.
10) Oletusarvoisesti Web API lähettää HTTP-vastauksen millä seuraavista tilakoodeista kaikille pyytämättömille poikkeuksille?
500 – Sisäinen palvelinvirhe
Asp.Net Web API haastattelukysymyksiä kokeneille
11) Mikä on Web API:n "muiden palautustyyppien" suurin haitta?
Tämän lähestymistavan suurin haitta on, että et voi palauttaa suoraan virhekoodia, kuten 404-virhettä.
12) Kuinka rakennat HtmlResponseMessagen?
Seuraavassa on tapa rakentaa niin,
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) Mikä on Web API -reititys?
Reititys on mallisovitusta kuten MVC:ssä.
Kaikki reitit on rekisteröity reittitaulukoihin.
Esimerkiksi:
Routes.MapHttpRoute( Name: "ExampleWebAPIRoute", routeTemplate: “api/{controller}/{id} defaults: new { id = RouteParameter.Optional}
14) Mikä on SOAP?
SOAP on XML-viestimuoto, jota käytetään verkkopalveluiden vuorovaikutuksessa. Se mahdollistaa viestien lähettämisen HTTP:n tai JMS:n kautta, mutta muita siirtoprotokollia voidaan käyttää. Se on myös XML-pohjainen viestintäprotokolla tietojen vaihtoon tietokoneiden välillä.
15) Mitä hyötyä REST:n käytöstä Web API:ssa on?
RESTiä käytetään vähentämään tiedonsiirtoa asiakkaan ja palvelimen välillä, mikä tekee siitä ihanteellisen käytettäväksi mobiilisovelluksissa. Web API tukee myös HTTP-protokollaa. Siksi se ottaa uudelleen käyttöön perinteisen HTTP-verbien viestintätavan.
16) Kuinka voimme käyttää Web API:ta ASP.NET Web Form -lomakkeen kanssa?
Web API:ta voidaan käyttää ASP.NET Web Form -lomakkeen kanssa
Se voidaan suorittaa kolmessa yksinkertaisessa vaiheessa:
- Luo Web API -ohjain,
- Lisää reititystaulukko Global.asax:n Application_Start-menetelmään
- Sitten sinun on tehtävä jQuery AJAX Call to Web API -menetelmä ja hankittava tiedot.
17) Kuinka voit rajoittaa pääsyn Web API:iin tiettyyn HTTP-verbiin?
Attribuuttien ohjelmointi on tärkeässä roolissa. On helppo rajoittaa pääsyä ASP.NET Web API -menetelmään kutsuttavaksi tietyllä HTTP-menetelmällä.
18) Voitko käyttää Web API:ta ASP.NET Web Form -lomakkeen kanssa?
Kyllä, Web API:n käyttö ASP.Net-verkkolomakkeen kanssa on mahdollista. Koska se on mukana ASP.NET MVC -kehyksessä. Sitä voidaan kuitenkin käyttää ASP.NET-verkkolomake.
19) Kuinka ASP.NET Web API -toiminnolle voidaan määrittää aliaksen nimi?
Voimme antaa Web API -toiminnolle saman nimen kuin tapauksessa ASP.NET MVC käyttämällä "ActionName" -attribuuttia seuraavasti:
[HttpPost] [ActionName("SaveStudentInfo")] public void UpdateStudent(Student aStudent) { StudentRepository.AddStudent(aStudent); }
20) Mitä TestApi tarkoittaa?
TestApi on API-apukirjasto. Käyttämällä tätä kirjaston testaajaa kehittäjä voi luoda testaustyökalut ja automaattiset testit .NET-sovellukselle käyttämällä tietorakennetta ja algoritmeja.
Web API haastattelukysymykset 5 vuoden kokemuksella
21) Selitä poikkeussuodattimet?
Se suoritetaan, kun poikkeuksia ei käsitellä ja ne poistetaan ohjaimestaod. Poikkeuksen syy voi olla mikä tahansa. Poikkeussuodattimet toteuttavat "IExceptionFilter" -liittymän.
22) Kuinka voimme rekisteröidä poikkeussuodattimen toiminnasta?
Voimme rekisteröidä poikkeussuodattimen toiminnasta seuraavalla koodilla:
[NotImplExceptionFilter] public TestCustomer GetMyTestCustomer(int custid) { //write the code }
23) Kuinka voit palauttaa View from ASP.NET Web API -menetelmän?
Ei, emme voi palauttaa näkymää ASP.NET Web API Methodista. Web API luo HTTP-palveluita, jotka tuottavat raakadataa. Se on kuitenkin mahdollista myös ASP.NET MVC -sovelluksessa.
24) Kuinka rekisteröidä poikkeussuodatin maailmanlaajuisesti?
Poikkeussuodatin on mahdollista rekisteröidä maailmanlaajuisesti käyttämällä seuraavaa koodia-
GlobalConfiguration.Configuration.Filters.Add(new
MyTestCustomerStore.NotImplExceptionFilterAttribute());
25) Selitä, mikä on LEPO ja LEPO?
REST edustaa REpresentational State Transfer; se on täysin uusi näkökohta verkkosovelluksen kirjoittamisessa.
RESTUL: REST-arkkitehtuurikonsepteja soveltamalla kirjoitettua termiä kutsutaan RESTful-palveluiksi. Se keskittyy järjestelmäresursseihin ja siihen, kuinka resurssin tila tulisi siirtää HTTP-protokollan kautta.
26) Anna yksi esimerkki Web API -reitityksestä?
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) Kuinka voit käsitellä Web API:n virheitä?
Web API:ssa on useita luokkia virheiden käsittelemiseksi. Ne ovat HttpError, poikkeussuodattimet, HttpResponseException ja Registring Exception Filters.
28) Mitä uusia ominaisuuksia ASP.NET Web API 2.0 sisältää?
ASP.NET Web API -kehyksen v2.0 uusimmat ominaisuudet ovat seuraavat:
- Attribuuttien reititys
- Cross-Origin Resource Sharing
- Ulkoinen todennus
- Avaa Web Interface NET
- HttpActionResult
- Web API OData
29) Kuinka voit rajoittaa pääsymenetelmiä tiettyihin HTTP-verbeihin Web API:ssa?
Attribuuttien (kuten HTTP-verbien) avulla on mahdollista toteuttaa pääsyrajoituksia Web API:ssa.
On mahdollista määrittää HTTP-verbit attribuutiksi pääsyn rajoittamiseksi.
Esimerkiksi:
[HttpPost] public void Method1(Class obj) { //logic
30) Kuinka voit välittää useita monimutkaisia tyyppejä Web API:ssa?
Kaksi tapaa välittää monimutkaiset tyypit Web API:ssa –
ArrayListin ja Newtonsoft-taulukon käyttäminen
31) Kirjoita koodi ArrayListin välittämiseksi Web API:ssa?
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) Nimeä työkalut tai API verkkosovellusliittymän kehittämiseen tai testaamiseen?
REST-sovellusliittymien verkkopalvelujen testaustyökaluja ovat:
- Jersey API
- CFX
- Akseli
- Palauta
33) Mikä on REST?
REST on arkkitehtoninen tyyli. Se on määritellyt ohjeet skaalautuvien palvelujen luomiselle. REST käytetään HTTP-protokollan kanssa sen verbeillä GET, PUT, POST ja DELETE.
34) Kuinka yksikkötestata Web API?
Voimme suorittaa yksikkötestin käyttämällä Web API -työkaluja, kuten Fiddler.
Tässä on joitain asetuksia, jotka on tehtävä, jos käytät
Fiddler -Kirjoita-välilehti -> Anna pyynnön otsikot -> Syötä pyyntöteksti ja suorita
35) Kuinka voimme rajoittaa pääsyä menetelmiin tietyillä HTTP-verbeillä Web API:ssa?
Attribuuttien ohjelmointia käytetään laajasti tähän toimintoon. Web API mahdollistaa myös kutsumenetelmien pääsyn rajoittamisen tiettyjen HTTP-verbien avulla. On myös mahdollista määrittää HTTP-verbit attribuuttien yli -menetelmäksi.
Web API haastattelukysymykset yli 10 vuoden kokemukselle
36) Mitä DelegatingHandleria käytetään?
DelegatingHandleria käytetään Web API:ssa edustamaan viestikäsittelijöitä ennen reititystä.
37) Kuinka voimme rekisteröidä poikkeussuodattimen toiminnasta?
Voimme rekisteröidä poikkeussuodattimen toiminnasta seuraavan koodin avulla
[NotImplExceptionFilter] public TestCust GetMyTestCust (int custno) { //write the code }
38) Kerro minulle koodinpätkä, joka näyttää, kuinka voimme palauttaa 404-virheet HttpErrorista?
Koodi 404-virheen palauttamiseksi HttpErrorista
string message = string.Format(“TestCustomer id = {0} not found”, customerid);
return Request.CreateErrorResponse(HttpStatusCode.NotFound, message);
39) Selitä koodinpätkä poikkeussuodattimien rekisteröimiseksi ohjaimesta?
[NotImplExceptionFilter] public class TestCustController : Controller { //Your code goes here }
40) Mitä protokollaa Web API tukee?
Web App tukee HTTP-protokollaa
41) Mikä seuraavista .NET-kehyksestä tukee Web API:ta?
Web API tukee NET 4.0 -versiota
42) Mitä kirjastoa Web API käyttää JSON-sarjaan?
Web API käyttää Json.NET-kirjastoa JSON-sarjoitukseen.
43) Oletusarvoisesti Web API lähettää HTTP-vastauksen millä seuraavista tilakoodeista kaikille pyytämättömille poikkeuksille?
500 – Sisäinen palvelinvirhe
44) Selitä tapa käsitellä virheitä käyttämällä HttpErroria Web API:ssa?
WEB-sovellusliittymässä HttpErroria käytetään heittämään virhetiedot vastauksen runkoon. Tämän kanssa voidaan käyttää myös "CreateErrorResponse" -menetelmää, joka on "HttpRequestMessageExtension" -kohdassa määritelty laajennusmenetelmä.
45) Kuinka voimme rekisteröidä poikkeussuodattimen maailmanlaajuisesti?
Voimme rekisteröidä poikkeussuodattimen maailmanlaajuisesti seuraavalla koodilla:
GlobalConfiguration.Configuration.Filters.Add (new MyTestCustomerStore.NotImplExceptionFilterAttribute());
46) Kuinka käsitellä virheitä Web API:ssa?
Web API:ssa on useita luokkia virheiden käsittelemiseksi. Ne ovat HttpError, HttpResponseException, Poikkeussuodattimet, Poikkeussuodattimien rekisteröinti.
47) Mitä hyötyä WebAPI:sta on WCF:ään verrattuna?
WCF-palvelut käyttävät SOAP-protokollaa, kun taas HTTP ei koskaan käytä SOAP-protokollaa. Siksi WebAPI-palvelut ovat kevyitä, koska SOAPia ei käytetä. Se vähentää myös palveluun siirrettävien tietojen määrää. Lisäksi se ei koskaan tarvitse liikaa konfigurointia. Siksi asiakas voi olla vuorovaikutuksessa palvelun kanssa käyttämällä HTTP-verbejä.
48) Tilaerot MVC:n ja WebAPI:n välillä
MVC-kehystä käytetään sellaisten sovellusten kehittämiseen, joissa on käyttöliittymä. Tätä varten näkymiä voidaan käyttää käyttöliittymän rakentamiseen.
WebAPI:tä käytetään HTTP-palveluiden kehittämiseen. Muita sovelluksia voidaan myös kutsua WebAPI-menetelmiksi näiden tietojen hakemiseksi.
49) Kuka voi käyttää WebAPI:ta?
WebAPI:tä voi käyttää mikä tahansa asiakas, joka tukee HTTP-verbejä, kuten GET, PUT, DELETE, POST. Koska WebAPI-palvelut eivät vaadi konfigurointia, ne ovat erittäin helppokäyttöisiä kaikille asiakkaille. Jopa kannettavat laitteet, kuten mobiililaitteet, voivat helposti kuluttaa WebAPI:tä, mikä on varmasti tämän tekniikan suurin etu.
50) Kuinka voimme varmistaa, että Web API palauttaa vain JSON-tiedot?
Web API:n saattaminen sarjoittamaan palaavan objektin JSON-muotoon ja palauttaa vain JSON-tiedot. Tätä varten sinun tulee lisätä seuraava koodi WebApiConfig.cs-luokkaan missä tahansa MVC Web API -projektissa:
//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"))
Nämä haastattelukysymykset auttavat myös vivassasi (suullinen)