Top 50 pitanja i odgovora za intervjue putem API-ja Asp.Net

Anonim

Preuzmite PDF

1) Što je web API?

WebAPI je okvir koji vam pomaže u izgradnji / razvoju HTTP usluga.

2) Zašto je potreban web API? Je li moguće koristiti RESTful usluge koristeći WCF?

Da, još uvijek možemo razviti RESTful usluge s WCF-om. Međutim, dva su glavna razloga zbog kojih korisnici trebaju koristiti web API umjesto RESTful usluga.

  • Web API povećava TDD (Test Data Driven) pristup u razvoju RESTful usluga.
  • Ako želimo razviti RESTful usluge u WCF-u, zasigurno vam treba puno konfiguracijskih postavki, URI predlošci, ugovori i krajnje točke za razvoj RESTful usluga pomoću web API-ja.

3) Zašto odabrati web API?

  • Koristi se za stvaranje jednostavnih HTTP usluga koje se ne temelje na SOAP-u
  • To je također jednostavna metoda za stvaranje pomoću web API-ja. Uz WCF REST Services
  • Temelji se na HTTP-u i jednostavan je za definiranje, izlaganje i upotrebu na OSTALO.
  • Lagane je arhitekture i idealan je za uređaje koji imaju ograničenu propusnost poput pametnih telefona.

4) Je li ispravno da je ASP.NET Web API zamijenio WCF?

Nije nimalo točno da je ASP.NET Web API zamijenio WCF. Zapravo je to još jedan način izgradnje usluga koje se ne temelje na SOAP-u, tj. Obični XML ili JSON niz.

5) Koje su prednosti web API-ja?

Prednosti Web API-ja su:

  • OData
  • Filteri
  • Pregovaranje o sadržaju
  • Samo-hosting
  • Usmjeravanje
  • Vezovi modela

6) Koje su glavne vrste povrata podržane u web API-ju?

Akcija kontrolera web API-a može vratiti sljedeće vrijednosti:

  • Void - Vratit će prazan sadržaj
  • HttpResponseMessage - Pretvorit će odgovor u HTTP poruku.
  • IHttpActionResult - interno poziva ExecuteAsync da stvori HttpResponseMessage
  • Ostale vrste - serijsku povratnu vrijednost možete upisati u tijelo odgovora

7) Koji web protokol podržava web API?

Web aplikacija podržava HTTP protokol.

8) Koji .NET okvir podržava Web API?

NET 4.0 i novije verzije podržavaju web API.

9) Web API koristi koju od sljedećih biblioteka otvorenog koda za JSON serializaciju?

Web API koristi Json.NET knjižnicu za JSON serializaciju.

10) Prema zadanim postavkama, Web API šalje HTTP odgovor s kojim od sljedećih statusnih kodova za sve neuhvaćene iznimke?

500 Interna pogreška poslužitelja

11) Koji je najveći nedostatak "ostalih vrsta povrata" u web API-ju?

Najveći nedostatak ovog pristupa je što ne možete izravno vratiti kôd pogreške poput pogreške 404.

12) Kako konstruirate HtmlResponseMessage?

Slijedi način da se to konstruira,

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) Što je usmjeravanje putem web API-ja?

Usmjeravanje se podudara s uzorkom kao u MVC.

Sve rute su registrirane u tablicama ruta.

Na primjer:

Routes.MapHttpRoute(Name: "ExampleWebAPIRoute",routeTemplate: “api/{controller}/{id}defaults: new { id = RouteParameter.Optional}

14) Što je SAPUN?

SOAP je format XML poruke koji se koristi u interakcijama s web uslugama. Omogućuje slanje poruka putem HTTP-a ili JMS-a, ali mogu se koristiti i drugi transportni protokoli. To je također XML-zasnovan protokol za razmjenu informacija između računala.

15) Koja je korist od korištenja REST-a u web API-ju?

REST se koristi za manje prijenosa podataka između klijenta i poslužitelja što ga čini idealnim za upotrebu u mobilnim aplikacijama. Web API također podržava HTTP protokol. Stoga ponovno uvodi tradicionalni način HTTP glagola za komunikaciju.

16) Kako možemo koristiti web API s ASP.NET web obrascem?

Web API može se koristiti s ASP.NET web obrascem

Može se izvesti u tri jednostavna koraka:

  1. Stvorite web API kontroler,
  2. Dodajte tablicu usmjeravanja u Application_Start metodu Global.sax
  3. Zatim morate izvršiti jQuery AJAX metodu Call to Web API i dobiti podatke.

17) Kako možete ograničiti pristup web API-ju na određeni HTTP glagol?

Programiranje atributa igra važnu ulogu. Lako je ograničiti pristup ASP.NET Web API metodi koja se poziva pomoću određene HTTP metode.

18) Možete li koristiti web API s ASP.NET web obrascem?

Da, moguće je koristiti web API s ASP.Net web obrascem. Kako je u paketu s ASP.NET MVC okvirom. Međutim, može se koristiti s ASP.NET web obrascem.

19) Kako mogu dodijeliti pseudonim za ASP.NET Web API Action?

Nadimak možemo dati za akciju web API-ja isto kao u slučaju ASP.NET MVC pomoću atributa "ActionName" kako slijedi:

[HttpPost][ActionName("SaveStudentInfo")]public void UpdateStudent(Student aStudent){StudentRepository.AddStudent(aStudent);}

20) Što znači TestApi?

TestApi je uslužna biblioteka API-ja. Korištenjem ovog programera za ispitivanje knjižnica može stvoriti alate za testiranje i automatizirane testove za .NET aplikaciju koristeći strukturu podataka i algoritme.

21) Objasniti filtre za iznimke?

Izvršit će se kada se iznimke obrade i izbace iz metode kontrolera. Razlog iznimke može biti bilo što. Filtri za iznimke implementirat će sučelje "IExceptionFilter".

22) Kako možemo registrirati filtar izuzetaka iz akcije?

Možemo registrirati filtar izuzetaka iz akcije pomoću sljedećeg koda:

[NotImplExceptionFilter]public TestCustomer GetMyTestCustomer(int custid){//write the code}

23) Kako možete vratiti metodu Pogled iz ASP.NET Web API-ja?

Ne, ne možemo vratiti prikaz s ASP.NET Web API metode. Web API stvara HTTP usluge koje generiraju sirove podatke. Međutim, to je moguće i u aplikaciji ASP.NET MVC.

24) Kako globalno registrirati filtar za iznimke?

Filtar za iznimke moguće je registrirati globalno pomoću sljedećeg koda-

GlobalConfiguration.Configuration.Filters.Add (novo

MyTestCustomerStore.NotImplExceptionFilterAttribute ());

25) Objasnite što je ODMORNO I OSTALO?

REST predstavlja reprezentativni prijenos države; to je potpuno novi aspekt pisanja web aplikacije.

RESTFUL: Termin napisan primjenom REST arhitektonskih koncepata naziva se RESTful services. Fokusira se na sistemske resurse i na to kako stanje resursa treba transportirati putem HTTP protokola.

26) Dajte mi jedan primjer usmjeravanja putem web API-ja?

Config.Routes.MapHttpRoute(name: "MyRoute,"//route namerouteTemplate: "api/{controller}/{action}/{id}",//as you can see "API" is at the beginning.defaults: new { id = RouteParameter.Optional });

27) Kako možete riješiti pogreške u web API-ju?

U web API-ju dostupno je nekoliko klasa za obradu pogrešaka. To su HttpError, Filteri iznimki, HttpResponseException i Registriranje filtera iznimke.

28) Koje nove značajke dolaze s ASP.NET Web API 2.0?

Najnovije značajke ASP.NET Web API okvira v2.0 su kako slijedi:

  • Usmjeravanje atributa
  • Dijeljenje resursa s više podrijetla
  • Vanjska provjera autentičnosti
  • Otvorite web sučelje NET
  • HttpActionResult
  • Web API OData

29) Kako možete ograničiti metode pristupa određenim HTTP glagolima u Web API-ju?

Uz pomoć atributa (poput HTTP glagola) moguće je implementirati ograničenja pristupa u web API-ju.

HTTP glagole je moguće definirati kao atribut za ograničavanje pristupa. Primjer:

[HttpPost]public void Method1(Class obj){//logic

30) Kako možete proslijediti više složenih vrsta u Web API?

Dvije metode za prosljeđivanje složenih vrsta u web API-ju -

Korištenje ArrayList i Newtonsoft polja

31) Napisati kod za prosljeđivanje ArrayList-a u web API?

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) Navedite alate ili API za razvoj ili testiranje web api-a?

Alati za testiranje web usluga za REST API-je uključuju:

  1. API za Jersey
  2. CFX
  3. Os
  4. Restlet

33) Što je ODMOR?

REST je arhitektonski stil. Definirao je smjernice za stvaranje usluga koje su skalabilne. REST se koristi s HTTP protokolom koristeći njegove glagole GET, PUT, POST i DELETE.

34) Kako jedinstveno testirati web API?

Jedinstveni test možemo izvesti pomoću alata web API-ja poput Fiddlera.

Evo nekoliko postavki koje treba obaviti ako upotrebljavate

Fiddler - kartica Sastavi -> Unesi zaglavlja zahtjeva -> Unesite tijelo zahtjeva i izvršite

35) Kako možemo ograničiti pristup metodama s određenim HTTP glagolima u Web API-ju?

Programiranje atributa široko se koristi za ovu funkcionalnost. Web API također omogućuje ograničavanje pristupa metodama pozivanja uz pomoć određenih HTTP glagola. Također je moguće definirati HTTP glagole kao atribut nad metodom.

36) Koja je upotreba DelegatingHandler-a?

DelegatingHandler koristi se u web API-ju za predstavljanje rukovatelja porukama prije usmjeravanja.

37) Kako možemo registrirati filtar izuzetaka iz akcije?

Možemo registrirati filtar izuzetaka iz akcije pomoću sljedećeg koda

[NotImplExceptionFilter]public TestCust GetMyTestCust (int custno){//write the code}

38) Recite mi isječak koda da pokažem kako možemo vratiti 404 pogreške iz HttpError?

Kôd za vraćanje pogreške 404 iz HttpError

string poruka = ​​string.Format (“TestCustomer id = {0} nije pronađen”, customerid);

vratiti Request.CreateErrorResponse (HttpStatusCode.NotFound, poruka);

39) Objasnite isječak koda za registraciju filtara izuzetaka iz kontrolera?

[NotImplExceptionFilter]public class TestCustController : Controller{//Your code goes here}

40) Koji web protokol podržava web API?

Podrška za web aplikacije HTTP protokol

41) Koji od sljedećih .NET okvira podržava Web API?

Web API podržava verzija NET 4.0

42) Web API koristi koju knjižnicu za JSON serializaciju?

Web API koristi Json.NET knjižnicu za JSON serializaciju.

43) Prema zadanim postavkama, web API šalje HTTP odgovor s kojim od slijedećih statusnih kodova za sve neuhvaćene iznimke?

500 Interna pogreška poslužitelja

44) Objasniti metodu za rukovanje pogreškama pomoću HttpError u web API-ju?

U WEB API-ju HttpError koristi za bacanje informacija o pogrešci u tijelo odgovora. Uz to se također može koristiti metoda „CreateErrorResponse“, koja je metoda proširenja definirana u „HttpRequestMessageExtension“.

45) Kako možemo globalno registrirati filtar za iznimke?

Filtar iznimki možemo registrirati globalno pomoću sljedećeg koda:

GlobalConfiguration.Configuration.Filters.Add (new MyTestCustomerStore.NotImplExceptionFilterAttribute());

46) Kako postupati s pogreškama u web API-ju?

U web API-ju dostupno je nekoliko klasa za obradu pogrešaka. To su HttpError, HttpResponseException, Filteri iznimki, Registriranje filtera iznimki.

47) Koja je korist WebAPI-a u odnosu na WCF?

WCF usluge koriste SOAP protokol, dok HTTP nikad ne koristi SOAP protokol. Zbog toga su WebAPI usluge male, jer se SOAP ne koristi. Također smanjuje podatke koji se prenose na nastavak usluge. Štoviše, nikad ne treba previše konfiguracije. Stoga klijent može komunicirati sa uslugom pomoću HTTP glagola.

48) Navedite razlike između MVC i WebAPI

MVC framework koristi se za razvoj aplikacija s korisničkim sučeljem. Za to se pogledi mogu koristiti za izgradnju korisničkog sučelja.

WebAPI se koristi za razvoj HTTP usluga. I druge se aplikacije mogu nazvati WebAPI metodama za dohvaćanje tih podataka.

49) Tko može konzumirati WebAPI?

WebAPI može konzumirati bilo koji klijent koji podržava HTTP glagole kao što su GET, PUT, DELETE, POST. Kako WebAPI usluge ne trebaju nikakvu konfiguraciju, bilo koji klijent ih je vrlo lako potrošiti. U stvari, čak i prijenosni uređaji poput mobilnih uređaja mogu lako trošiti WebAPI što je zasigurno najveća prednost ove tehnologije.

50) Kako se možemo pobrinuti da Web API vraća samo JSON podatke?

Da bi web API serijski vratio objekt u JSON format i vraća samo JSON podatke. Za to biste trebali dodati sljedeći kôd u klasi WebApiConfig.cs u bilo koji MVC projekt web API-ja:

//JsonFormatter//MediaTypeHeaderValueConfig.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"));123//JsonFormatter//MediaTypeHeaderValueConfig.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"))