Top 50 Asp.Net Web API interviju jautājumi un atbildes

Satura rādītājs

Lejupielādēt PDF

1) Kas ir Web API?

WebAPI ir sistēma, kas palīdz jums izveidot / attīstīt HTTP pakalpojumus.

2) Kāpēc ir nepieciešama Web API? Vai ir iespējams izmantot RESTful pakalpojumus, izmantojot WCF?

Jā, mēs joprojām varam attīstīt RESTful pakalpojumus ar WCF. Tomēr ir divi galvenie iemesli, kas liek lietotājiem lietot Web API, nevis RESTful pakalpojumus.

  • Web API palielina TDD (Test Data Driven) pieeju RESTful pakalpojumu izstrādē.
  • Ja mēs vēlamies attīstīt RESTful pakalpojumus WCF, jums noteikti ir nepieciešami daudzi konfigurācijas iestatījumi, URI veidnes, līgumi un galapunkti, lai izstrādātu RESTful pakalpojumus, izmantojot tīmekļa API.

3) Kāpēc izvēlēties Web API?

  • To izmanto, lai izveidotu vienkāršus HTTP pakalpojumus, kas nav SOAP bāzes
  • Tā ir arī vienkārša metode, kā izveidot Web API. Ar WCF REST pakalpojumiem
  • Tas ir balstīts uz HTTP un ir viegli definējams, pakļauts un patērēts pilnīgā veidā.
  • Tā ir viegla arhitektūra un ideāli piemērota ierīcēm, kurām ir ierobežots joslas platums, piemēram, viedtālruņiem.

4) Vai ir pareizi, ka ASP.NET Web API ir aizstājusi WCF?

Tas nemaz nav taisnība, ka ASP.NET Web API ir aizstājusi WCF. Faktiski tas ir vēl viens veids, kā izveidot pakalpojumus, kas nav SOAP pamatā, ti, vienkārša XML vai JSON virkne.

5) Kādas ir Web API priekšrocības?

Web API priekšrocības ir:

  • OData
  • Filtri
  • Sarunas par saturu
  • Pašapkalpošanās
  • Maršrutēšana
  • Iesiešanas modeļi

6) Kādi ir galvenie Web API atbalstītie atgriešanas veidi?

Web API kontroliera darbība var atgriezt šādas vērtības:

  • Void - tas atgriezīs tukšu saturu
  • HttpResponseMessage - tā pārveidos atbildi par HTTP ziņojumu.
  • IHttpActionResult - iekšēji izsauc ExecuteAsync, lai izveidotu HttpResponseMessage
  • Citi veidi - sērijas atgriešanas vērtību varat ierakstīt atbildes pamattekstā

7) Kurš protokols atbalsta Web API?

Web App atbalsta HTTP protokolu.

8) Kurš .NET ietvars atbalsta Web API?

NET 4.0 un jaunāka versija atbalsta tīmekļa API.

9) Web API kuru no šīm atvērtā pirmkoda bibliotēkām izmanto JSON sērijveidošanai?

Tīmekļa API JSON sērijveidošanai izmanto Json.NET bibliotēku.

10) Pēc noklusējuma Web API nosūta HTTP atbildi, izmantojot kādu no šiem statusa kodiem visiem neizņemtajiem izņēmumiem?

500 - iekšējā servera kļūda

11) Kāds ir lielākais Web API "Citu atgriešanās veidu" trūkums?

Šīs pieejas lielākais trūkums ir tāds, ka jūs nevarat tieši atgriezt kļūdas kodu, piemēram, 404 kļūda.

12) Kā jūs izveidojat HtmlResponseMessage?

Šis ir veids, kā to izdarīt,

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) Kas ir Web API maršrutēšana?

Maršrutēšana ir modeļu saskaņošana, piemēram, MVC.

Visi maršruti ir reģistrēti Maršrutu tabulās.

Piemēram:

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

14) Kas ir ziepes?

SOAP ir XML ziņojumu formāts, ko izmanto tīmekļa pakalpojumu mijiedarbībā. Tas ļauj nosūtīt ziņojumus, izmantojot HTTP vai JMS, bet var izmantot arī citus transporta protokolus. Tas ir arī uz XML balstīts ziņojumapmaiņas protokols informācijas apmaiņai starp datoriem.

15) Kāds ir REST izmantošanas Web API ieguvums?

REST tiek izmantots, lai mazāk datu pārsūtītu starp klientu un serveri, kas padara to par ideālu tā izmantošanai mobilajās lietotnēs. Tīmekļa API atbalsta arī HTTP protokolu. Tāpēc tajā tiek atkārtoti ieviests HTTP darbības vārdu tradicionālais saziņas veids.

16) Kā mēs varam izmantot Web API ar ASP.NET Web Form?

Web API var izmantot ar ASP.NET Web Form

To var veikt trīs vienkāršās darbībās:

  1. Izveidojiet Web API kontrolieri,
  2. Pievienojiet maršrutēšanas tabulu Global.sax metodei Application_Start
  3. Tad jums jāveic jQuery AJAX Call to Web API metode un jāiegūst dati.

17) Kā jūs varat ierobežot piekļuvi Web API līdz konkrētam HTTP darbības vārdam?

Atribūtu programmēšanai ir svarīga loma. Ir viegli ierobežot piekļuvi ASP.NET Web API metodei, ko izsaukt, izmantojot noteiktu HTTP metodi.

18) Vai varat izmantot Web API ar ASP.NET Web Form?

Jā, Web API ir iespējams izmantot ar ASP.Net tīmekļa veidlapu. Tā kā tas ir komplektā ar ASP.NET MVC ietvaru. Tomēr to var izmantot kopā ar ASP.NET Web Form.

19) Kā var piešķirt aizstājvārdu ASP.NET Web API darbībai?

Mēs varam piešķirt aizstājvārdu Web API darbībai tāpat kā ASP.NET MVC gadījumā, izmantojot atribūtu "ActionName" šādi:

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

20) Ko nozīmē TestApi?

TestApi ir noderīga API bibliotēka. Izmantojot šo bibliotēkas testeri, izstrādātājs var izveidot testēšanas rīkus un automatizētus testus .NET lietojumprogrammai, izmantojot datu struktūru un algoritmus.

21) Izskaidrot izņēmumu filtrus?

Tas tiks izpildīts, kad izņēmumi netiks apstrādāti un izmesti no kontroliera metodes. Izņēmuma iemesls var būt jebkas. Izņēmuma filtri ieviesīs interfeisu "IExceptionFilter".

22) Kā mēs varam reģistrēt izņēmuma filtru no darbības?

Mēs varam reģistrēt izņēmumu filtru no darbības, izmantojot šādu kodu:

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

23) Kā jūs varat atgriezt skatu no ASP.NET Web API metodes?

Nē, mēs nevaram atgriezt skatu no ASP.NET Web API metodes. Tīmekļa API izveido HTTP pakalpojumus, kas atveido neapstrādātus datus. Tomēr tas ir iespējams arī lietojumprogrammā ASP.NET MVC.

24) Kā reģistrēt izņēmumu filtru visā pasaulē?

Ir iespējams reģistrēt izņēmumu filtru visā pasaulē, izmantojot šādu kodu

GlobalConfiguration.Configuration.Filters.Add (jauns

MyTestCustomerStore.NotImplExceptionFilterAttribute ());

25) Paskaidrojiet, kas ir ATPŪTA un ATPŪTA.

REST apzīmē reprezentatīvu valsts nodošanu; tas ir pilnīgi jauns tīmekļa lietotnes rakstīšanas aspekts.

RESTFUL: Tas ir termins, kas rakstīts, izmantojot REST arhitektūras koncepcijas, tiek saukts par RESTful pakalpojumiem. Tas koncentrējas uz sistēmas resursiem un to, kā resursa stāvoklis jāpārvieto, izmantojot HTTP protokolu.

26) Dodiet man vienu Web API maršrutēšanas piemēru?

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) Kā jūs varat rīkoties ar kļūdām Web API?

Lai apstrādātu kļūdas, Web API ir pieejamas vairākas klases. Tie ir HttpError, izņēmuma filtri, HttpResponseException un izņēmuma filtru reģistrēšana.

28) Kādas jaunās funkcijas ir saistītas ar ASP.NET Web API 2.0?

ASP.NET Web API Framework v2.0 jaunākās funkcijas ir šādas:

  • Atribūtu maršrutēšana
  • Resursu koplietošana starp izcelsmi
  • Ārējā autentifikācija
  • Atveriet tīmekļa saskarni NET
  • HttpActionResult
  • Tīmekļa API OData

29) Kā jūs varat ierobežot piekļuves metodes noteiktiem HTTP darbības vārdiem Web API?

Ar atribūtu (piemēram, HTTP darbības vārdu) palīdzību Web API ir iespējams ieviest piekļuves ierobežojumus.

Piekļuves ierobežošanai ir iespējams definēt HTTP darbības vārdus kā atribūtu. Piemērs:

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

30) Kā Web API var nodot vairākus sarežģītus veidus?

Divas metodes sarežģītu veidu nodošanai Web API -

Izmantojot ArrayList un Newtonsoft masīvu

31) Uzrakstiet kodu ArrayList nodošanai 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) Nosauciet rīkus vai API tīmekļa api izstrādei vai testēšanai?

REST API tīmekļa pakalpojumu pārbaudes rīki ietver:

  1. Džersijas API
  2. CFX
  3. Asis
  4. Restlet

33) Kas ir ATPŪTA?

REST ir arhitektūras stils. Tā ir definējusi mērogojamu pakalpojumu izveidošanas vadlīnijas. REST tiek izmantots ar HTTP protokolu, izmantojot tā darbības vārdus GET, PUT, POST un DELETE.

34) Kā pārbaudīt Web API?

Mēs varam veikt vienības testu, izmantojot Web API rīkus, piemēram, Fiddler.

Šeit ir daži iestatījumi, kas jāveic, ja izmantojat

Fiddler -Compose cilne -> Enter Request Headers -> Ievadiet Request Body un izpildiet

35) Kā Web API var ierobežot piekļuvi metodēm ar īpašiem HTTP darbības vārdiem?

Šai funkcionalitātei tiek plaši izmantota atribūtu programmēšana. Tīmekļa API ļauj arī ierobežot piekļuvi zvanīšanas metodēm, izmantojot īpašus HTTP darbības vārdus. Ir arī iespējams definēt HTTP darbības vārdus kā atribūtu pār metodi.

36) Kāda ir DelegatingHandler izmantošana?

DelegatingHandler tiek izmantots tīmekļa API, lai pārstāvētu ziņojumu apstrādātājus pirms maršrutēšanas.

37) Kā mēs varam reģistrēt izņēmuma filtru no darbības?

Mēs varam reģistrēt darbību izņēmumu filtru, izmantojot šādu kodu

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

38) Sakiet man koda fragmentu, lai parādītu, kā mēs varam atgriezt 404 kļūdas no HttpError?

Kods 404 kļūdas atgriešanai no HttpError

virknes ziņojums = string.Format (“TestCustomer id = {0} nav atrasts”, klienta ID);

atgriezt Request.CreateErrorResponse (HttpStatusCode.NotFound, ziņojums);

39) Izskaidrojiet koda fragmentu, lai reģistrētu izņēmuma filtrus no kontroliera?

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

40) Kurš protokols atbalsta Web API?

Web App atbalsta HTTP protokolu

41) Kurš no šiem .NET Framework atbalsta Web API?

Tīmekļa API atbalsta NET 4.0 versija

42) Web API kuru bibliotēku izmanto JSON sērijveidošanai?

Tīmekļa API JSON sērijveidošanai izmanto Json.NET bibliotēku.

43) Pēc noklusējuma Web API nosūta HTTP atbildi ar kādu no šiem statusa kodiem visiem neizņemtajiem izņēmumiem?

500 - iekšējā servera kļūda

44) Izskaidrojiet metodi, kā rīkoties ar kļūdu, izmantojot HttpError Web API?

WEB API HttpError, ko izmanto, lai atbildes pamattekstā ievietotu informāciju par kļūdu. Var izmantot arī metodi “CreateErrorResponse”, kas ir paplašinājuma metode, kas definēta sadaļā “HttpRequestMessageExtension”.

45) Kā mēs varam reģistrēt izņēmumu filtru visā pasaulē?

Mēs varam reģistrēt izņēmumu filtru visā pasaulē, izmantojot šādu kodu:

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

46) Kā rīkoties ar kļūdām Web API?

Lai apstrādātu kļūdas, Web API ir pieejamas vairākas klases. Tie ir HttpError, HttpResponseException, izņēmuma filtri, izņēmuma filtru reģistrēšana.

47) Kāds ir WebAPI ieguvums salīdzinājumā ar WCF?

WCF pakalpojumi izmanto SOAP protokolu, bet HTTP nekad neizmanto SOAP protokolu. Tāpēc WebAPI pakalpojumi ir viegli, jo SOAP netiek izmantots. Tas arī samazina datus, kas tiek pārsūtīti, lai atsāktu pakalpojumu. Turklāt tam nekad nav nepieciešama pārāk liela konfigurācija. Tādēļ klients var mijiedarboties ar pakalpojumu, izmantojot HTTP darbības vārdus.

48) Valsts atšķirības starp MVC un WebAPI

MVC ietvars tiek izmantots tādu lietojumprogrammu izstrādei, kurām ir lietotāja saskarne. Šim nolūkam skatus var izmantot, lai izveidotu lietotāja saskarni.

WebAPI tiek izmantots HTTP pakalpojumu izstrādei. Citas lietotnes var saukt arī par WebAPI metodēm, lai iegūtu šos datus.

49) Kas var lietot WebAPI?

WebAPI var patērēt jebkurš klients, kas atbalsta HTTP darbības vārdus, piemēram, GET, PUT, DELETE, POST. Tā kā WebAPI pakalpojumiem nav nepieciešama nekāda konfigurācija, tos ir ļoti viegli patērēt jebkuram klientam. Nepārkāpjot, pat pārnēsājamas ierīces, piemēram, mobilās ierīces, var viegli patērēt WebAPI, kas noteikti ir šīs tehnoloģijas lielākās priekšrocības.

50) Kā mēs varam pārliecināties, ka Web API atgriež tikai JSON datus?

Lai Web API liktu sērijveidā atgriežamo objektu JSON formātā un atgriež tikai JSON datus. Tam jebkurā MVC Web API projektā WebApiConfig.cs klasē jāpievieno šāds kods:

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

Interesanti raksti...