शीर्ष 50 Asp.Net वेब एपीआई साक्षात्कार प्रश्न और उत्तर

Anonim

डाउनलोड पीडीऍफ़

1) वेब एपीआई क्या है?

WebAPI एक ढांचा है जो आपको HTTP सेवाओं के निर्माण / विकास में मदद करता है।

2) वेब एपीआई की आवश्यकता क्यों है? क्या WCF का उपयोग करके RESTful सेवाओं का उपयोग करना संभव है?

हां, हम अभी भी WCF के साथ RESTful सेवाओं को विकसित कर सकते हैं। हालाँकि, दो मुख्य कारण हैं जो उपयोगकर्ताओं को Restful सेवाओं के बजाय Web API का उपयोग करने के लिए संकेत देते हैं।

  • रेस्टफुल सेवाओं के विकास में वेब एपीआई टीडीडी (टेस्ट डेटा ड्रिवेन) दृष्टिकोण को बढ़ाता है।
  • अगर हम WCF में RESTful सेवाओं को विकसित करना चाहते हैं, तो आपको निश्चित रूप से वेब API का उपयोग करके RESTful सेवाओं को विकसित करने के लिए बहुत सारी कॉन्फिग सेटिंग्स, URI टेम्प्लेट, कॉन्ट्रैक्ट और एंडपॉइंट की आवश्यकता है।

3) वेब एपीआई का चयन क्यों करें?

  • इसका उपयोग सरल, गैर-सोप-आधारित HTTP सेवाओं को बनाने के लिए किया जाता है
  • यह वेब एपीआई के साथ निर्माण के लिए एक आसान तरीका भी है। WCF बाकी सेवाओं के साथ
  • यह HTTP पर आधारित है और REST-ful तरीके से परिभाषित, उजागर और उपभोग करना आसान है।
  • यह लाइटवेट आर्किटेक्चर है और उन डिवाइसों के लिए आदर्श है, जिनमें स्मार्टफोन जैसे सीमित बैंडविड्थ हैं।

4) क्या यह सही है कि ASP.NET वेब एपीआई ने WCF को बदल दिया है?

यह बिल्कुल सच नहीं है कि ASP.NET वेब एपीआई ने WCF को बदल दिया है। वास्तव में, यह नॉन-सोप आधारित सेवाओं के निर्माण का एक और तरीका है, अर्थात, सादे XML या JSON स्ट्रिंग।

5) वेब एपीआई के क्या फायदे हैं?

वेब एपीआई के लाभ हैं:

  • ओदता
  • फिल्टर
  • सामग्री बातचीत
  • स्व की मेजबानी
  • मार्ग
  • मॉडल बाइंडिंग

6) वेब एपीआई में मुख्य रिटर्न प्रकार क्या समर्थित हैं?

वेब API कंट्रोलर एक्शन निम्न मानों को वापस ला सकता है:

  • शून्य - यह खाली सामग्री लौटाएगा
  • HttpResponseMessage - यह एक HTTP संदेश की प्रतिक्रिया को रूपांतरित करेगा।
  • IHttpActionResult - आंतरिक रूप से ExecuteAsync को HttpResponseMessage बनाने के लिए कहता है
  • अन्य प्रकार - आप प्रतिक्रिया शरीर में क्रमबद्ध रिटर्न मान लिख सकते हैं

7) वेब एपीआई किस प्रोटोकॉल का समर्थन करता है?

वेब ऐप HTTP प्रोटोकॉल को सपोर्ट करता है।

8) कौन सा .NET फ्रेमवर्क वेब एपीआई का समर्थन करता है?

NET 4.0 और इसके बाद के संस्करण वेब एपीआई का समर्थन करते हैं।

9) वेब एपीआई JSON क्रमांकन के लिए निम्नलिखित ओपन-सोर्स लाइब्रेरी का उपयोग करता है?

वेब एपीआई JSON सीरियलाइजेशन के लिए Json.NET लाइब्रेरी का उपयोग करता है।

10) डिफ़ॉल्ट रूप से, वेब एपीआई HTTP प्रतिक्रिया भेजता है, जिसमें सभी अनकैप्ड अपवाद के लिए निम्नलिखित में से कौन सी स्थिति कोड है?

500 आंतरिक सर्वर त्रुटि

11) वेब एपीआई में "अन्य रिटर्न प्रकार" का सबसे बड़ा नुकसान क्या है?

इस दृष्टिकोण का सबसे बड़ा नुकसान यह है कि आप 404 त्रुटि जैसे त्रुटि कोड को सीधे वापस नहीं कर सकते।

12) आप HtmlResponseMessage का निर्माण कैसे करते हैं?

ऐसा करने का तरीका निम्नलिखित है,

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) वेब एपीआई रूटिंग क्या है?

राउटिंग MVC की तरह पैटर्न मिलान है।

सभी मार्ग रूट टेबल्स में पंजीकृत हैं।

उदाहरण के लिए:

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

14) SOAP क्या है?

SOAP एक XML संदेश प्रारूप है जिसका उपयोग वेब सेवा इंटरैक्शन में किया जाता है। यह HTTP या JMS पर संदेश भेजने की अनुमति देता है, लेकिन अन्य परिवहन प्रोटोकॉल का उपयोग किया जा सकता है। यह कंप्यूटरों के बीच सूचनाओं के आदान-प्रदान के लिए एक XML- आधारित मैसेजिंग प्रोटोकॉल भी है।

15) वेब एपीआई में REST के उपयोग से क्या लाभ है?

REST का उपयोग क्लाइंट और सर्वर के बीच कम डेटा ट्रांसफ़र करने के लिए किया जाता है जो इसे मोबाइल ऐप में उपयोग करने के लिए एक आदर्श बनाता है। वेब एपीआई HTTP प्रोटोकॉल का भी समर्थन करता है। इसलिए, यह संचार के लिए HTTP क्रिया के पारंपरिक तरीके को फिर से प्रस्तुत करता है।

16) हम ASP.NET वेब फॉर्म के साथ वेब एपीआई का उपयोग कैसे कर सकते हैं?

वेब एपीआई का उपयोग ASP.NET वेब फॉर्म के साथ किया जा सकता है

इसे तीन सरल चरणों में किया जा सकता है:

  1. एक वेब एपीआई नियंत्रक बनाएँ,
  2. Global.sax के Application_Start पद्धति में एक रूटिंग तालिका जोड़ें
  3. फिर आपको वेब एपीआई विधि के लिए एक jQuery AJAX कॉल करने और डेटा प्राप्त करने की आवश्यकता है।

17) आप विशिष्ट HTTP वर्ब के लिए वेब एपीआई तक पहुंच कैसे सीमित कर सकते हैं?

प्रोग्रामिंग में एक महत्वपूर्ण भूमिका निभाता है। किसी विशेष HTTP विधि का उपयोग करके कॉल किए जाने वाले ASP.NET वेब एपीआई विधि तक पहुंच को प्रतिबंधित करना आसान है।

18) क्या आप ASP.NET वेब फॉर्म के साथ वेब एपीआई का उपयोग कर सकते हैं?

हां, ASP.Net वेब फॉर्म के साथ वेब एपीआई का उपयोग करना संभव है। जैसा कि यह ASP.NET MVC फ्रेमवर्क के साथ बंडल किया गया है। हालाँकि, इसका उपयोग ASP.NET वेब फॉर्म के साथ किया जा सकता है।

19) ASP.NET वेब एपीआई एक्शन के लिए अन्य नाम कैसे बता सकते हैं?

हम निम्नानुसार "एक्शननेम" विशेषता का उपयोग करके ASP.NET MVC के मामले में वेब API कार्रवाई के लिए उपनाम नाम दे सकते हैं:

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

20) टेस्टअपी का अर्थ क्या है?

TestApi एपीआई की एक उपयोगिता पुस्तकालय है। इस लाइब्रेरी टेस्टर डेवलपर का उपयोग करके डेटा संरचना और एल्गोरिदम का उपयोग करके .NET अनुप्रयोग के लिए परीक्षण उपकरण और स्वचालित परीक्षण बना सकते हैं।

21) अपवाद फिल्टर की व्याख्या करें?

यह निष्पादित किया जाएगा जब अपवादों को नियंत्रित नहीं किया जाता है और एक नियंत्रक मेथ ओ डी से फेंक दिया जाता है। अपवाद का कारण कुछ भी हो सकता है। अपवाद फ़िल्टर "IExceptionFilter" इंटरफ़ेस को लागू करेगा।

22) हम कार्रवाई से अपवाद फ़िल्टर कैसे दर्ज कर सकते हैं?

हम निम्नलिखित कोड का उपयोग करके कार्रवाई से अपवाद फ़िल्टर को पंजीकृत कर सकते हैं:

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

23) आप ASP.NET वेब एपीआई विधि से दृश्य कैसे वापस कर सकते हैं?

नहीं, हम ASP.NET वेब एपीआई विधि से एक दृश्य वापस नहीं कर सकते। वेब एपीआई HTTP सेवाएं बनाता है जो कच्चे डेटा को प्रस्तुत करता है। हालाँकि, यह ASP.NET MVC अनुप्रयोग में भी संभव है।

24) विश्व स्तर पर अपवाद फ़िल्टर कैसे पंजीकृत करें?

निम्नलिखित कोड का उपयोग करके विश्व स्तर पर अपवाद फिल्टर को पंजीकृत करना संभव है-

GlobalConfiguration.Configuration.Filters.Add (नया)

MyTestCustomerStore.NotImplExceptionFilterAttribute ());

25) बताइए REST और RESTFUL क्या है?

REST प्रतिनिधित्वपूर्ण राज्य हस्तांतरण का प्रतिनिधित्व करता है; यह वेब ऐप लिखने का एक नया पहलू है।

RESTFUL: इसे REST आर्किटेक्चरल कॉन्सेप्ट्स को लागू करके लिखा गया है, RESTful सर्विसेज कहलाता है। यह सिस्टम संसाधनों पर ध्यान केंद्रित करता है और कैसे HTTP प्रोटोकॉल पर संसाधन की स्थिति को ले जाया जाना चाहिए।

26) मुझे वेब एपीआई रूटिंग का एक उदाहरण दें?

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) आप वेब एपीआई में त्रुटियों को कैसे संभाल सकते हैं?

त्रुटियों को संभालने के लिए वेब एपीआई में कई कक्षाएं उपलब्ध हैं। वे HttpError, Exception Filters, HttpResponseException और Registering Exception Filters हैं।

28) ASP.NET वेब एपीआई 2.0 के साथ क्या नई सुविधाएँ आती हैं?

ASP.NET वेब एपीआई फ्रेमवर्क v2.0 की नवीनतम विशेषताएं इस प्रकार हैं:

  • रूटिंग में भाग लें
  • क्रॉस-ऑरिजनल रिसोर्स शेयरिंग
  • बाहरी प्रमाणीकरण
  • वेब इंटरफेस नेट खोलें
  • HttpActionResult
  • वेब एपीआई ओडटा

29) आप वेब एपीआई में विशिष्ट HTTP क्रियाओं तक पहुंच के तरीकों को कैसे प्रतिबंधित कर सकते हैं?

विशेषताएँ (HTTP क्रियाओं की तरह) की मदद से, वेब एपीआई में एक्सेस प्रतिबंध लागू करना संभव है।

पहुंच को प्रतिबंधित करने के लिए एक विशेषता के रूप में HTTP क्रियाओं को परिभाषित करना संभव है। उदाहरण:

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

30) आप वेब एपीआई में कई जटिल प्रकार कैसे पारित कर सकते हैं?

वेब एपीआई में जटिल प्रकार पारित करने के लिए दो तरीके -

ArrayList और Newtonsoft सरणी का उपयोग करना

31) Web API में ArrayList पास करने के लिए एक कोड लिखें?

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) वेब एपीआई के विकास या परीक्षण के लिए उपकरण या एपीआई का नाम?

REST API के लिए वेब सेवाओं के परीक्षण उपकरणों में शामिल हैं:

  1. जर्सी एपीआई
  2. सीएफएक्स
  3. एक्सिस
  4. विश्राम करना

33) REST क्या है?

REST स्थापत्य शैली है। इसने सेवाओं को बनाने के लिए दिशानिर्देशों को परिभाषित किया है जो कि मापनीय हैं अपने वर्जन GET, PUT, POST और DELETE का उपयोग करके HTTP प्रोटोकॉल के साथ REST का उपयोग किया जाता है।

34) वेब एपीआई का परीक्षण कैसे करें?

हम वेब एपीआई टूल जैसे फिडलर का उपयोग करके एक यूनिट टेस्ट कर सकते हैं।

यहां, यदि आप उपयोग कर रहे हैं तो कुछ सेटिंग की जानी चाहिए

Fiddler -Compose Tab -> रिक्वेस्ट हेडर डालें -> रिक्वेस्ट बॉडी डालें और निष्पादित करें

35) हम वेब एपीआई में विशिष्ट HTTP क्रियाओं के साथ तरीकों तक पहुंच कैसे सीमित कर सकते हैं?

इस कार्यक्षमता के लिए व्यापक रूप से प्रोग्रामिंग का उपयोग किया जाता है। वेब एपीआई विशिष्ट HTTP क्रियाओं की मदद से कॉलिंग विधियों की पहुंच को प्रतिबंधित करने की भी अनुमति देता है। HTTP वर्ब को विशेषता के रूप में परिभाषित करना भी संभव है।

36) डेलिगेटिंगहैंडलर का उपयोग क्या है?

रूटिंग से पहले संदेश संचालकों का प्रतिनिधित्व करने के लिए डेलिगेटहैंडलर का उपयोग वेब एपीआई में किया जाता है।

३) हम कार्रवाई से अपवाद फ़िल्टर कैसे दर्ज कर सकते हैं?

हम निम्नलिखित कोड का उपयोग करके कार्रवाई से अपवाद फ़िल्टर को पंजीकृत कर सकते हैं

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

38) मुझे कोड स्निपेट बताएं कि हम HttpError से 404 त्रुटियों को कैसे वापस कर सकते हैं?

HttpError से 404 त्रुटि वापस करने के लिए कोड

स्ट्रिंग संदेश = string.Format ("TestCustomer id = {0} नहीं मिला", ग्राहक);

वापसी अनुरोध।

39) कंट्रोलर से अपवाद फिल्टर को पंजीकृत करने के लिए कोड स्निपेट की व्याख्या करें?

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

40) वेब एपीआई किस प्रोटोकॉल का समर्थन करता है?

वेब ऐप HTTP प्रोटोकॉल का समर्थन करता है

41) निम्न में से कौन सी .NET फ्रेमवर्क वेब एपीआई का समर्थन करता है?

वेब एपीआई नेट 4.0 संस्करण द्वारा समर्थित है

42) वेब एपीआई JSON क्रमांकन के लिए किस पुस्तकालय का उपयोग करता है?

वेब एपीआई JSON सीरियलाइजेशन के लिए Json.NET लाइब्रेरी का उपयोग करता है।

४३) डिफ़ॉल्ट रूप से, वेब एपीआई HTTP प्रतिक्रिया भेजता है, जिसमें सभी अनकैप्ड अपवाद के लिए निम्नलिखित में से कौन सी स्थिति कोड है?

500 आंतरिक सर्वर त्रुटि

44) वेब एपीआई में HttpError का उपयोग करके त्रुटि को संभालने का तरीका बताएं?

WEB एपीआई में HttpError प्रतिक्रिया शरीर में त्रुटि जानकारी फेंकने के लिए उपयोग किया जाता है। "CreateErrorResponse" विधि का उपयोग इसके साथ भी किया जा सकता है, जो कि "HttpRequestMessageExtension" में परिभाषित एक विस्तार विधि है।

45) हम विश्व स्तर पर अपवाद फ़िल्टर कैसे दर्ज कर सकते हैं?

हम निम्नलिखित कोड का उपयोग करके विश्व स्तर पर अपवाद फ़िल्टर को पंजीकृत कर सकते हैं:

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

46) वेब एपीआई में त्रुटियों को कैसे संभालना है?

त्रुटियों को संभालने के लिए वेब एपीआई में कई कक्षाएं उपलब्ध हैं। वे HttpError, HttpResponseException, Exception Filters, Registering Exception Filters हैं।

47) डब्ल्यूसीएफ पर वेबएपीआई का क्या लाभ है?

WCF सेवाएँ SOAP प्रोटोकॉल का उपयोग करती हैं जबकि HTTP कभी SOAP प्रोटोकॉल का उपयोग नहीं करता है। इसलिए SOAP का उपयोग नहीं होने के कारण WebAPI सेवाएँ हल्की हैं। यह डेटा को भी कम करता है जिसे फिर से शुरू सेवा में स्थानांतरित किया जाता है। इसके अलावा, इसे बहुत अधिक कॉन्फ़िगरेशन की आवश्यकता नहीं है। इसलिए, क्लाइंट HTTP क्रियाओं का उपयोग करके सेवा के साथ बातचीत कर सकता है।

48) MVC और WebAPI के बीच राज्य अंतर

MVC फ्रेमवर्क का उपयोग उन अनुप्रयोगों को विकसित करने के लिए किया जाता है जिनमें उपयोगकर्ता इंटरफ़ेस है। उसके लिए, उपयोगकर्ता इंटरफ़ेस के निर्माण के लिए विचारों का उपयोग किया जा सकता है।

WebAPI का उपयोग HTTP सेवाओं को विकसित करने के लिए किया जाता है। उस डेटा को लाने के लिए अन्य ऐप को वेबएपीआई तरीके भी कहा जा सकता है।

49) WebAPI का उपभोग कौन कर सकता है?

WebAPI को किसी भी क्लाइंट द्वारा उपभोग किया जा सकता है जो HTTP वर्ट्स जैसे GET, PUT, DELETE, POST का समर्थन करता है। जैसा कि WebAPI सेवाओं को किसी भी कॉन्फ़िगरेशन की आवश्यकता नहीं है, वे किसी भी ग्राहक द्वारा उपभोग करना बहुत आसान है। Infract, यहां तक ​​कि मोबाइल उपकरणों जैसे पोर्टेबल डिवाइस आसानी से WebAPI का उपभोग कर सकते हैं जो निश्चित रूप से इस तकनीक का सबसे बड़ा लाभ है।

50) हम यह कैसे सुनिश्चित कर सकते हैं कि वेब एपीआई केवल JSON डेटा लौटाए?

वेब API बनाने के लिए रिटर्निंग ऑब्जेक्ट को JSON फॉर्मेट में क्रमबद्ध करें और केवल JSON डेटा लौटाता है। उसके लिए आपको किसी MVC वेब एपीआई प्रोजेक्ट में WebApiConfig.cs वर्ग में निम्न कोड जोड़ना चाहिए:

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