top 20 restful web services interview question
सबसे अक्सर पूछे जाने वाले रैस्टफुल वेब सेवाओं की सूची साक्षात्कार प्रश्न और आने वाले साक्षात्कार के लिए तैयार करने में आपकी मदद करने के लिए उत्तर:
वेब सेवाएँ, एक बहुत अच्छी तरह से ज्ञात शब्द जब हम कई अनुप्रयोगों या सॉफ़्टवेयर के बीच किसी प्रकार के डेटा के आदान-प्रदान के बारे में बात करते हैं। क्लाइंट-सर्वर मॉडल के आधार पर, इन सेवाओं का उपयोग विभिन्न भाषाओं में लिखे गए कई सॉफ्टवेयर अनुप्रयोगों द्वारा किया जा सकता है और इसके लिए विभिन्न प्लेटफार्मों पर चलने का लाभ है।
इसी तरह, प्रतिनिधि स्टेट ट्रांसफर भी स्टेटलेस क्लाइंट-सर्वर स्टाइल आर्किटेक्चर पर आधारित है, जिसे आसानी से नेटवर्क पर एक्सेस किया जा सकता है और इसे यूआरआई यानी यूनिफॉर्म रिसोर्स आइडेंटिफायर द्वारा पहचाना जाता है।
कैसे चलाने के लिए .bin फ़ाइलें
वेब सेवाओं की परिभाषा और साथ ही ऊपर दिए गए REST की परिभाषा का मुख्य उद्देश्य आपको शब्द से संबंधित करने में मदद करना है ' प्रतिष्ठित वेब सेवाएँ ' क्योंकि RESTful वेब सेवाओं को वेब सेवाओं के रूप में परिभाषित किया जाता है जो HTTP विधि का उपयोग करते हैं और REST की वास्तुकला पर आधारित होते हैं। इसमें उच्च मापनीयता और स्थिरता, एपीआई का निर्माण आदि जैसी उपयोगी विशेषताएं हैं।
और जानें = >> फ्लास्क रेस्टफुल एपीआई
इस लेख में, आपको प्रश्न और उत्तर का संग्रह मिलेगा जो आपकी मूल बातें साफ कर देगा और विषय की बेहतर समझ विकसित करने में मदद करेगा।
यह भी पढ़े:
रेस्टफुल वेब सर्विसेज प्रश्न की सूची
चलो शुरू करते हैं।
Q # 1) Restful वेब सेवाओं के बारे में आपकी क्या समझ है?
उत्तर: एसओएपी (सिंपल ऑब्जेक्ट एक्सेस प्रोटोकॉल) की तरह, जिसका उपयोग एक्सएमएल विधि द्वारा वेब सेवाओं को विकसित करने के लिए किया जाता है, रेस्टफुल वेब सेवाएं वेब प्रोटोकॉल यानी HTTP प्रोटोकॉल विधि का उपयोग करती हैं। उनके पास स्केलेबिलिटी, मेंटेनेंस, विभिन्न प्रोग्रामिंग लैंग्वेजेस पर बनाए गए मल्टीपल एप्लिकेशन कम्युनिकेशन आदि की सुविधा है।
रेस्टफुल वेब सेवा कार्यान्वयन क्लाइंट द्वारा आवश्यक विभिन्न संसाधनों तक पहुंचने की विधि को परिभाषित करता है और उसने वेब ब्राउज़र के माध्यम से सर्वर को अनुरोध भेजा है।
इस कार्यान्वयन के महत्वपूर्ण पहलुओं में शामिल हैं:
- संसाधन
- अनुरोध हेड
- शरीर का अनुरोध करें
- रिस्पांस बॉडी
- स्थिति कोड
Q # 2) उस प्रोटोकॉल का नाम बताइए जिसका उपयोग Restful वेब सेवाओं द्वारा किया जाता है।
उत्तर: रैस्टफुल वेब सेवाएं एक प्रसिद्ध वेब प्रोटोकॉल यानी HTTP प्रोटोकॉल का उपयोग करती हैं। यह क्लाइंट और सर्वर के बीच डेटा संचार का एक माध्यम है। RESTful वेब सेवा आर्किटेक्चर में संसाधनों तक पहुंचने के लिए HTTP मानक विधियों का उपयोग किया जाता है।
Q # 3) 'WEB सेवा के संबंध में' संबोधन 'शब्द को समझाइए।
उत्तर: जैसे हमें किसी भी व्यक्ति तक पहुंचने के लिए पोस्टल कोड के साथ एक पते की आवश्यकता होती है, उसी तरह, on उन संसाधनों को संबोधित करना जो वेब सेवाओं की मेजबानी के उद्देश्य से सर्वर पर मौजूद हैं। यह आमतौर पर यूआरआई यानी यूनिफाइड रिसोर्स आइडेंटिफायर के साथ किया जाता है।
Q # 4) रेस्टफुल वेब सेवाओं की विशेषताएं सूचीबद्ध करें।
उत्तर: प्रत्येक प्रतिष्ठित वेब सेवाओं में निम्नलिखित विशेषताएं और विशेषताएं होनी चाहिए जो नीचे सूचीबद्ध हैं:
- क्लाइंट-सर्वर प्रतिनिधित्व के आधार पर।
- वेब सेवा से डेटा प्राप्त करने, संसाधनों को पुनः प्राप्त करने, किसी क्वेरी के निष्पादन आदि जैसे कार्यों के लिए HTTP प्रोटोकॉल का उपयोग।
- सर्वर और क्लाइंट के बीच संचार the मैसेजिंग ’नामक माध्यम से किया जाता है।
- URI के माध्यम से सर्वर पर उपलब्ध संसाधनों को संबोधित करना।
- स्टेटलेसनेस की अवधारणा के आधार पर जहां प्रत्येक ग्राहक अनुरोध करता है और आवश्यक जानकारी प्रदान करने के पूरे आश्वासन के साथ प्रतिक्रिया अन्य से स्वतंत्र होती है।
- कैशिंग की अवधारणा का उपयोग करता है।
- यूनिफ़ॉर्म इंटरफ़ेस पर काम करता है।
Q # 5) मैसेजिंग तकनीक को समझाइए।
उत्तर: संदेश किसी भी प्रकार के संचार के लिए डेटा का आदान-प्रदान करने का तरीका है। उसी तरह, HTTP प्रोटोकॉल क्लाइंट और सर्वर के बीच HTTP रिक्वेस्ट और रिस्पॉन्स विधियों के माध्यम से संदेश संचार की भूमिका निभाता है। HTTP अनुरोध क्लाइंट द्वारा भेजा जाता है जिसमें डेटा के बारे में जानकारी होती है और बदले में, सर्वर से HTTP रिस्पांस प्राप्त करता है।
संदेश डेटा के बारे में जानकारी का संग्रह है यानी मेटाडेटा।
Q # 6) HTTP अनुरोध और HTTP प्रतिक्रिया के मुख्य घटक क्या हैं?
उत्तर: HTTP अनुरोध के अंतर्गत मुख्य घटक हैं:
- क्रिया: जिसमें GET, PUT, POST इत्यादि जैसे तरीके शामिल हैं।
- सर्वर पर उपलब्ध संसाधनों की पहचान के लिए यूनिफ़ॉर्म रिसोर्स आइडेंटिफ़ायर।
- HTTP संस्करण HTTP संस्करण को निर्दिष्ट करने के लिए।
- HTTP अनुरोध शीर्षलेख डेटा के बारे में जानकारी रखने के लिए।
- HTTP अनुरोध निकाय जिसमें उपयोग में संसाधनों का प्रतिनिधित्व शामिल है।
HTTP प्रतिसाद के अंतर्गत मुख्य घटक हैं:
- अनुरोध कोड: इसमें विभिन्न कोड होते हैं जो सर्वर प्रतिक्रिया की स्थिति निर्धारित करते हैं।
- HTTP संस्करण HTTP संस्करण को निर्दिष्ट करने के लिए।
- HTTP रिस्पांस हेडर जिसमें डेटा की जानकारी हो।
- HTTP रिस्पांस बॉडी जिसमें उपयोग में संसाधनों का प्रतिनिधित्व शामिल है।
Q # 7) RESTful WEB सेवा के संबंध में 'स्टेटलेसनेस' शब्द की व्याख्या कीजिए।
उत्तर: REST में, ST स्वयं स्टेट ट्रांसफर को परिभाषित करता है और स्टेटलेसनेस का अर्थ है पूर्ण अलगाव। इसका अर्थ है, क्लाइंट के एप्लिकेशन की स्थिति कभी भी सर्वर पर संग्रहीत नहीं होती है और इसे पास कर दिया जाता है।
इस प्रक्रिया में, क्लाइंट को HTTP अनुरोध को पूरा करने के लिए सर्वर के लिए आवश्यक सभी जानकारी भेजते हैं। इस प्रकार हर ग्राहक अनुरोध और प्रतिक्रिया आवश्यक जानकारी प्रदान करने के पूर्ण आश्वासन के साथ अन्य से स्वतंत्र है।
प्रत्येक ग्राहक एक 'सत्र पहचानकर्ता' पास करता है, जो प्रत्येक सत्र के लिए एक पहचानकर्ता के रूप में कार्य करता है।
Q # 8) 'स्टेटलेसनेस' के फायदे और नुकसान को सूचीबद्ध करें।
उत्तर: उपरोक्त प्रश्न में, हमने क्लाइंट-सर्वर संचार के संबंध में स्टेटलेसनेस के अर्थ को समझा है। अब, हम इसके कुछ फायदे और नुकसान देखते हैं।
लाभ:
- संचार के लिए आवश्यक प्रत्येक विधि की पहचान एक स्वतंत्र विधि के रूप में की जाती है अर्थात् अन्य विधियों के लिए कोई निर्भरता नहीं होती है।
- क्लाइंट और सर्वर के साथ किसी भी पिछले संचार को बनाए नहीं रखा जाता है और इस प्रकार पूरी प्रक्रिया बहुत सरल हो जाती है।
- यदि किसी भी जानकारी या मेटाडेटा को पहले किसी अन्य विधि में आवश्यक रूप से उपयोग किया जाता है, तो क्लाइंट उस जानकारी को फिर से HTTP अनुरोध के साथ भेजता है।
- HTTP प्रोटोकॉल और REST वेब सेवा, दोनों स्टेटलेसनेस की विशेषता को साझा करते हैं।
नुकसान:
- क्लाइंट से हर HTTP अनुरोध में, ग्राहक सेवा के बारे में कुछ जानकारी की उपलब्धता वेब सेवा द्वारा आवश्यक है।
Q # 9) Restful वेब सेवाओं के लिए कुछ महत्वपूर्ण बाधाओं को सूचीबद्ध करें।
उत्तर: हर बाधा का सकारात्मक और नकारात्मक प्रभाव पड़ता है और समग्र वास्तुकला का निर्माण करने के लिए, दोनों के बीच संतुलन होना चाहिए।
नीचे उल्लेख किया गया है RESTful वेब सेवा के लिए कुछ महत्वपूर्ण बाधाएं:
- प्रत्येक सर्वर और क्लाइंट के लिए अलग-अलग चिंताएं होनी चाहिए जो अनुप्रयोग के भीतर प्रतिरूपकता बनाए रखने में मदद करेगी। इससे जटिलता भी कम होगी और स्केलेबिलिटी बढ़ेगी।
- क्लाइंट-सर्वर संचार स्टेटलेस होना चाहिए, जिसका अर्थ है कि कोई पिछली जानकारी का उपयोग नहीं किया गया है और पूर्ण निष्पादन अलगाव में किया गया है। विफलता के मामलों में, यह ग्राहक को ठीक होने में भी मदद करता है।
- क्लाइंट-सर्वर संचार में, एचटीटीपी प्रतिक्रिया प्रतिक्रियाशील होनी चाहिए ताकि जब आवश्यक कैश्ड कॉपी का उपयोग किया जा सके जो बदले में सर्वर की मापनीयता और प्रदर्शन को बढ़ाता है।
- चौथा बाधा एकरूप इंटरफ़ेस है जो क्लाइंट-सर्वर इंटरैक्शन को आसानी से समझने की अनुमति देता है। इस बाधा को आगे चार उप-बाधाओं में विभाजित किया गया है:
- संसाधन की पहचान
- संसाधन में हेरफेर
- प्रत्येक संदेश आसानी से समझ में आता है और स्व-वर्णनात्मक होता है।
- हाइपरमीडिया, जिसे हाइपरलिंक के साथ पाठ के रूप में परिभाषित किया गया है और जब क्लिक किया जाता है, तो यह दूसरे एप्लिकेशन स्थिति में चला जाता है।
- क्लाइंट-सर्वर संचार एक स्तरित प्रणाली पर किया जाना चाहिए और इस प्रकार ग्राहक को केवल मध्यवर्ती स्तर के बारे में ज्ञान होना चाहिए जिसके साथ संचार किया जा रहा है,
Q # 10) 'संसाधन' क्या है?
उत्तर: जैसे 'ऑब्जेक्ट' का उदाहरण, हमने ऑब्जेक्ट ओरिएंट प्रोग्रामिंग लैंग्वेज में सीखा है, उसी तरह, 'संसाधन' को एक प्रकार की वस्तु के रूप में परिभाषित किया गया है, जो एक छवि, HTML फ़ाइल, पाठ डेटा और किसी भी प्रकार की डायनामिक हो सकती है डेटा। एक संसाधन का प्रतिनिधित्व करने के लिए प्रतिनिधित्व प्रारूपों की किस्में उपलब्ध हैं।
कुछ सबसे आम संसाधन नीचे सूचीबद्ध हैं:
- JSON
- YAML
- एक्सएमएल
- एचटीएमएल
Q # 11) संसाधन के उचित प्रतिनिधित्व की आवश्यकता क्यों है?
उत्तर: प्रतिनिधित्व बहुत महत्वपूर्ण है क्योंकि यह संसाधनों की आसान पहचान निर्धारित करता है। उचित प्रारूप में संसाधन के उचित प्रतिनिधित्व के साथ, ग्राहक को प्रारूप को आसानी से समझने की अनुमति देता है।
Q # 12) कुछ महत्वपूर्ण बिंदुओं को सूचीबद्ध करें जिन्हें Restful वेब सेवाओं के लिए संसाधन प्रतिनिधित्व को डिजाइन करते समय ध्यान में रखा जाना चाहिए।
उत्तर: जैसे कि उस प्रारूप पर कोई प्रतिबंध नहीं है जिसमें संसाधन प्रतिनिधित्व किया जाता है लेकिन सिर्फ यह है कि मुख्य आवश्यकता ग्राहक के आवश्यकता के अनुसार प्रतिनिधित्व का प्रारूप होना चाहिए।
एक अच्छा संसाधन प्रतिनिधित्व निम्नलिखित मुख्य बिंदुओं पर विचार करके बनाया गया है:
- ग्राहक और सर्वर द्वारा संसाधन प्रतिनिधित्व प्रारूप को आसानी से समझा जाना चाहिए।
- प्रतिनिधित्व अपनी प्रारूप संरचना की परवाह किए बिना पूरा होना चाहिए, जो जटिल या सरल हो सकता है।
- संसाधनों को अन्य संसाधनों से जोड़ने के मामले में, ऐसे मामलों पर भी विचार किया जाना चाहिए।
Q # 13) कैशिंग क्या है?
उत्तर: कैशिंग वह प्रक्रिया है जिसमें सर्वर प्रतिक्रिया को संग्रहीत किया जाता है ताकि आवश्यकता पड़ने पर कैश्ड प्रतिलिपि का उपयोग किया जा सके और फिर से उसी प्रतिक्रिया को उत्पन्न करने की आवश्यकता न हो। यह प्रक्रिया न केवल सर्वर लोड को कम करती है बल्कि बदले में सर्वर की मापनीयता और प्रदर्शन को बढ़ाती है। केवल ग्राहक प्रतिक्रिया को कैश करने में सक्षम है और वह भी सीमित समय के लिए।
नीचे उल्लेखित संसाधन और उनके संक्षिप्त विवरण के शीर्षक हैं ताकि उन्हें कैशिंग प्रक्रिया के लिए पहचाना जा सके:
- संसाधन निर्माण का समय और तारीख
- संसाधन संशोधन का समय और तारीख जो आमतौर पर अंतिम विवरण संग्रहीत करता है।
- कैश-कंट्रोल हेडर
- समय और दिनांक जिस पर कैश्ड संसाधन समाप्त हो जाएगा।
- वह उम्र जो संसाधन प्राप्त करने के समय से निर्धारित होती है।
Q # 14) कैश-कंट्रोल हैडर की व्याख्या करें।
उत्तर: एक मानक कैश-कंट्रोल हेडर कैश की क्षमता प्राप्त करने में मदद कर सकता है। नीचे सूचीबद्ध विभिन्न कैश-कंट्रोल हेडर का संक्षिप्त विवरण है:
- जनता: जिन संसाधनों को जनता के रूप में चिह्नित किया जाता है, उन्हें ग्राहक और सर्वर के बीच किसी भी मध्यवर्ती घटकों द्वारा कैश किया जा सकता है।
- निजी: निजी के रूप में चिह्नित संसाधन केवल क्लाइंट द्वारा कैश किए जा सकते हैं।
- कैश का मतलब यह नहीं है कि किसी विशेष संसाधन को कैश नहीं किया जा सकता है और इस तरह पूरी प्रक्रिया रोक दी जाती है।
Q # 15) रेस्टफुल वेब सेवाओं को डिजाइन करते समय किन सर्वोत्तम प्रथाओं का पालन किया जाना चाहिए?
उत्तर: एक सुरक्षित रेस्टफुल वेब सेवा को डिजाइन करने के लिए, कुछ सर्वोत्तम प्रथाएं या कहे गए बिंदु हैं जिन पर विचार किया जाना चाहिए।
इन्हें इस प्रकार समझाया गया है:
- सर्वर पर हर इनपुट को मान्य किया जाना चाहिए।
- इनपुट अच्छी तरह से बनाया जाना चाहिए।
- URL के माध्यम से कभी भी कोई संवेदनशील डेटा पास न करें।
- किसी भी सत्र के लिए, उपयोगकर्ता को प्रमाणित किया जाना चाहिए।
- किसी भी गलती को इंगित करने के लिए केवल HTTP त्रुटि संदेशों का उपयोग किया जाना चाहिए।
- संदेश प्रारूप का उपयोग करें जो आसानी से समझा जाता है और ग्राहक द्वारा आवश्यक है।
- एकीकृत संसाधन पहचानकर्ता वर्णनात्मक और आसानी से समझा जाना चाहिए।
Q # 16) पेलोड क्या है?
उत्तर: प्रत्येक HTTP संदेश के मुख्य भाग में मौजूद अनुरोध डेटा को 'पेलोड' कहा जाता है। रेस्टफुल वेब सेवा में, पेलोड को केवल POST विधि के माध्यम से प्राप्तकर्ता को दिया जा सकता है।
POST विधि के माध्यम से पेलोड के रूप में डेटा भेजने की कोई सीमा नहीं है लेकिन केवल चिंता यह है कि अधिक डेटा अधिक समय और बैंडविड्थ का उपभोग करेगा। यह उपयोगकर्ता के समय का बहुत अधिक उपभोग कर सकता है।
Q # 17) कुछ HTTP विधियों को विवरण के साथ सूचीबद्ध करें।
उत्तर: नीचे सूचीबद्ध उनके विवरण के साथ HTTP विधियों की सूची है:
- प्राप्त: यह एक रीड-ओनली ऑपरेशन है जो सर्वर पर उपयोगकर्ताओं की सूची लाता है।
- लगाया हुआ: इस ऑपरेशन का उपयोग सर्वर पर किसी भी नए संसाधन के निर्माण के लिए किया जाता है।
- पद: इस ऑपरेशन का उपयोग किसी पुराने संसाधन को अपडेट करने या नए संसाधन बनाने के लिए किया जाता है।
- DELETE: जैसा कि नाम से पता चलता है, इस ऑपरेशन का उपयोग सर्वर पर किसी भी संसाधन को हटाने के लिए किया जाता है।
- विकल्प: यह ऑपरेशन सर्वर पर उपलब्ध संसाधनों के किसी समर्थित विकल्प की सूची प्राप्त करता है।
Q # 18) PUT विधि और POST विधि में क्या अंतर है?
उत्तर: PUT और POST विधि के बीच मुख्य अंतर यह है कि PUT विधि से उत्पन्न परिणाम हमेशा एक ही होता है चाहे कितनी बार ऑपरेशन किया गया हो। दूसरी ओर, POST ऑपरेशन द्वारा उत्पन्न परिणाम हमेशा हर बार अलग होता है।
Q # 19) JAX-RS के बारे में आपकी क्या समझ है?
उत्तर: JAX-RS को RESTful वेब सेवा के लिए जावा एपीआई के रूप में परिभाषित किया गया है। कई पुस्तकालयों और ढांचे के बीच, यह सबसे उपयुक्त जावा प्रोग्रामिंग भाषा आधारित एपीआई के रूप में माना जाता है जो रेस्टफुल वेब सेवा का समर्थन करता है।
JAX-RS के कार्यान्वयन में से कुछ हैं:
- जर्सी
- शेष सहज
- अपाचे सीएफएक्स
- खेल
इनमें से जर्सी सबसे लोकप्रिय ढांचा है।
Q # 20) HTTP स्टेटस कोड क्या हैं? अर्थ के साथ कुछ को सूचीबद्ध करें।
उत्तर: HTTP स्थिति कोड मूल रूप से कुछ कोड के मोड के साथ सर्वर पर किए गए कार्य की स्थिति का प्रतिनिधित्व करते हैं। हर कोड का अपना मतलब होता है।
उनके अर्थ के साथ कुछ HTTP स्टेटस कोड निम्नानुसार हैं:
- कोड 200: यह सफलता को इंगित करता है।
- कोड 201: यह इंगित करता है कि संसाधन सफलतापूर्वक बनाया गया है।
- कोड 204: यह इंगित करता है कि प्रतिक्रिया शरीर में कोई सामग्री नहीं है।
- कोड 404: यह इंगित करता है कि कोई विधि उपलब्ध नहीं है।
कुछ और ऐसे कोड हैं जो स्थिति को इंगित करते हैं।
निष्कर्ष
यह लेख आपको Restful वेब सेवाओं के साक्षात्कार के लिए तैयार करने में मदद करेगा और आपको सरल और आसान तरीके से अवधारणा को समझने में मदद करेगा। मैंने उन सभी क्षेत्रों को कवर करने की कोशिश की है जो Restful Web सेवाओं के बारे में पूरी जानकारी रखने के लिए बहुत आवश्यक हैं।
अग्रिम पठन - फ्लास्क एपीआई ट्यूटोरियल
बस याद रखें, यह संभव हो सकता है कि आप साक्षात्कार में सभी सवालों के जवाब देने में सक्षम नहीं हैं, लेकिन आप जो भी उत्तर देते हैं वह सटीक होना चाहिए। आपकी मूल अवधारणा मजबूत होनी चाहिए और आपका आत्मविश्वास स्तर ऊंचा होना चाहिए।
शुभकामनाएं!!
अनुशंसित पाठ
- कुछ मुश्किल मैनुअल परीक्षण प्रश्न और उत्तर
- शीर्ष 20+ .NET साक्षात्कार प्रश्न और उत्तर
- 20 सबसे लोकप्रिय TestNG साक्षात्कार प्रश्न और उत्तर
- शीर्ष 20 सबसे महत्वपूर्ण एपीआई परीक्षण साक्षात्कार प्रश्न और उत्तर
- ईटीएल परीक्षण साक्षात्कार प्रश्न और उत्तर
- शीर्ष 20 नवीनतम DevOps साक्षात्कार प्रश्न और उत्तर 2021 के लिए
- 20 शीर्ष व्यापार विश्लेषक साक्षात्कार प्रश्न और उत्तर (2021 सूची)
- शीर्ष 20 प्रतिष्ठित वेब सेवा साक्षात्कार प्रश्न और उत्तर
- शीर्ष 45 वेब सेवाएँ साक्षात्कार प्रश्न और उत्तर (प्रतिष्ठित, SOAP, सुरक्षा प्रश्न)