"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > एपीआई हुड के तहत कैसे काम करते हैं

एपीआई हुड के तहत कैसे काम करते हैं

2024-08-31 को प्रकाशित
ब्राउज़ करें:936

एपीआई (एप्लिकेशन प्रोग्रामिंग इंटरफेस) आधुनिक सॉफ्टवेयर विकास के लिए मौलिक हैं, जो विभिन्न प्रणालियों को एक-दूसरे के साथ संवाद करने में सक्षम बनाते हैं। लेकिन जब आप एपीआई एंडपॉइंट पर पहुंचते हैं तो क्या होता है? डेटा आपके क्लाइंट एप्लिकेशन से सर्वर तक और वापस कैसे जाता है? यह आलेख विज़ुअल एड्स और अतिरिक्त स्पष्टीकरण की मदद से एपीआई अनुरोध की यात्रा को चरण-दर-चरण तोड़ते हुए, इन प्रक्रियाओं को उजागर करेगा।

1. ग्राहक एक अनुरोध करता है

कल्पना करें कि आप एक वेब एप्लिकेशन बना रहे हैं जो मौसम डेटा प्रदर्शित करता है। जब कोई उपयोगकर्ता वर्तमान मौसम देखने के लिए एक बटन पर क्लिक करता है, तो आपका एप्लिकेशन https://api.weather.com/current जैसे एपीआई एंडपॉइंट पर एक अनुरोध भेजता है।

यहाँ क्या होता है?

  • HTTP अनुरोध: क्लाइंट (आपका एप्लिकेशन) एक HTTP अनुरोध बनाता है, जिसमें विधि (जैसे, GET, POST), एंडपॉइंट यूआरएल और किसी भी आवश्यक हेडर (जैसे प्राधिकरण या सामग्री-प्रकार) निर्दिष्ट होता है।
  • पेलोड: यदि यह एक POST अनुरोध है, तो इसमें एक पेलोड शामिल हो सकता है, जैसे पैरामीटर के साथ JSON ऑब्जेक्ट (उदाहरण के लिए, { "शहर": "न्यूयॉर्क" })।

फिर यह HTTP अनुरोध इंटरनेट के माध्यम से एपीआई होस्ट करने वाले सर्वर पर भेजा जाता है।

How APIs Work Under the Hood

2. DNS लुकअप: सर्वर ढूँढना

आपका अनुरोध सर्वर तक पहुंचने से पहले, उसे पहले पता होना चाहिए कि कहां जाना है। यहीं पर डोमेन नेम सिस्टम (DNS) आता है।

DNS लुकअप: ब्राउज़र या क्लाइंट एप्लिकेशन डोमेन लेता है (उदाहरण के लिए, api.weather.com) और उसके संबंधित आईपी पते को खोजने के लिए DNS सर्वर से पूछताछ करता है। यह आईपी पता इंटरनेट पर सर्वर का वास्तविक स्थान है।

How APIs Work Under the Hood

3. कनेक्शन स्थापित करना

अब जब क्लाइंट को पता है कि सर्वर कहां है, तो उसे एक कनेक्शन स्थापित करने की आवश्यकता है।

टीसीपी हैंडशेक: क्लाइंट और सर्वर ट्रांसमिशन कंट्रोल प्रोटोकॉल (टीसीपी) का उपयोग करके एक कनेक्शन स्थापित करते हैं। इसमें तीन चरणों वाली प्रक्रिया शामिल है जिसे टीसीपी हैंडशेक के नाम से जाना जाता है:

  1. SYN: क्लाइंट सर्वर को एक सिंक्रनाइज़ेशन (SYN) अनुरोध भेजता है।
  2. SYN-ACK: सर्वर इस अनुरोध को स्वीकार करता है और SYN-ACK के साथ प्रतिक्रिया करता है।
  3. ACK: क्लाइंट हैंडशेक पूरा करते हुए सर्वर की प्रतिक्रिया स्वीकार करता है।

एक बार यह हैंडशेक पूरा हो जाने पर, कनेक्शन स्थापित हो जाता है, और डेटा का आदान-प्रदान किया जा सकता है।

How APIs Work Under the Hood

4. सर्वर को अनुरोध प्राप्त होता है

कनेक्शन स्थापित होने के साथ, HTTP अनुरोध सर्वर पर प्रेषित होता है।

सर्वर-साइड प्रोसेसिंग:

  • रूटिंग: सर्वर अनुरोध प्राप्त करता है और इसे एंडपॉइंट के आधार पर उपयुक्त हैंडलर पर रूट करता है (उदाहरण के लिए, https://api.weather.com/current में /current)। इसमें यूआरएल पैटर्न को किसी विशिष्ट नियंत्रक या फ़ंक्शन से मिलान करना शामिल हो सकता है।
  • नियंत्रक तर्क: सर्वर का नियंत्रक अनुरोध को संसाधित करता है। इसमें डेटा पुनर्प्राप्त करने के लिए डेटाबेस से पूछताछ करना, गणना करना या डेटा परिवर्तन करना, या अतिरिक्त जानकारी प्राप्त करने के लिए अन्य आंतरिक सेवाओं को कॉल करना शामिल हो सकता है।
  • प्रमाणीकरण और प्राधिकरण: यदि समापन बिंदु को प्रमाणीकरण की आवश्यकता होती है, तो सर्वर क्लाइंट के क्रेडेंशियल्स को सत्यापित करता है। उदाहरण के लिए, यदि अनुरोध में एपीआई कुंजी या एक्सेस टोकन शामिल है, तो सर्वर इसकी वैधता की जांच करता है और सुनिश्चित करता है कि क्लाइंट के पास अनुरोधित संसाधन तक पहुंचने के लिए आवश्यक अनुमतियां हैं।

5. प्रतिक्रिया तैयारी

अनुरोध को संसाधित करने के बाद, सर्वर एक प्रतिक्रिया तैयार करता है।

प्रतिक्रिया ऑब्जेक्ट: सर्वर एक HTTP प्रतिक्रिया ऑब्जेक्ट बनाता है, जिसमें शामिल है:

  • स्थिति कोड: अनुरोध के परिणाम को इंगित करता है (उदाहरण के लिए, 200 ठीक, 404 नहीं मिला, 500 आंतरिक सर्वर त्रुटि)।
  • शीर्षलेख: प्रतिक्रिया के बारे में मेटाडेटा प्रदान करें, जैसे सामग्री-प्रकार (उदाहरण के लिए, एप्लिकेशन/जेसन) या सेट-कुकी।
  • बॉडी: इसमें क्लाइंट द्वारा अनुरोधित डेटा शामिल होता है, अक्सर JSON प्रारूप में (उदाहरण के लिए, { "तापमान": "72°F", "स्थिति": "सनी" })।

6. प्रतिक्रिया वापस भेजना

सर्वर स्थापित कनेक्शन पर क्लाइंट को HTTP प्रतिक्रिया वापस भेजता है।

डेटा ट्रांसमिशन: यह प्रतिक्रिया इंटरनेट के माध्यम से संभावित रूप से विभिन्न राउटर और गेटवे से गुजरती है। यह अंततः ग्राहक तक पहुंचता है, जो प्रतिक्रिया संसाधित करता है।

How APIs Work Under the Hood

7. ग्राहक प्रतिक्रिया प्राप्त करता है और उसे संसाधित करता है

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

यूआई अपडेट: हमारे मौसम एप्लिकेशन में, क्लाइंट प्रतिक्रिया से तापमान डेटा लेता है और वर्तमान मौसम दिखाने के लिए डिस्प्ले को अपडेट करता है।

त्रुटि प्रबंधन: यदि कुछ गलत हुआ (उदाहरण के लिए, सर्वर ने 404 या 500 स्टेटस कोड लौटाया), तो क्लाइंट एक त्रुटि संदेश दिखा सकता है या अनुरोध का पुनः प्रयास कर सकता है।

8. कनेक्शन समाप्ति

डेटा एक्सचेंज पूरा होने के बाद, क्लाइंट और सर्वर के बीच कनेक्शन बंद हो जाता है।

टीसीपी कनेक्शन समाप्ति: हैंडशेक के समान, कनेक्शन चार-चरणीय प्रक्रिया का उपयोग करके समाप्त किया जाता है:

  1. FIN: ग्राहक एक फिनिश (FIN) अनुरोध भेजता है।
  2. ACK: सर्वर फिन अनुरोध को स्वीकार करता है।
  3. FIN: सर्वर अपना स्वयं का FIN अनुरोध भेजता है।
  4. ACK: क्लाइंट सर्वर के फिन अनुरोध को स्वीकार करता है।

यह व्यवस्थित शटडाउन सुनिश्चित करता है कि दोनों पक्षों ने डेटा संचारित करना समाप्त कर लिया है।

How APIs Work Under the Hood

समस्या निवारण और सामान्य मुद्दे

हालांकि एपीआई अनुरोध-प्रतिक्रिया प्रक्रिया सीधी लग सकती है, लेकिन कई सामान्य मुद्दे हैं जो उत्पन्न हो सकते हैं, जैसे:

  • नेटवर्क त्रुटियां: कनेक्शन टाइमआउट, खोए हुए पैकेट, या अन्य नेटवर्क-संबंधी समस्याएं अनुरोध को सर्वर तक पहुंचने या प्रतिक्रिया को क्लाइंट तक पहुंचने से रोक सकती हैं।
  • प्रमाणीकरण/प्राधिकरण विफलताएं: गलत या समाप्त एपीआई कुंजी, टोकन, या अपर्याप्त अनुमतियों के कारण प्रमाणीकरण या प्राधिकरण त्रुटियां हो सकती हैं।
  • सर्वर-साइड त्रुटियां: सर्वर को डेटाबेस विफलता, संसाधन अनुपलब्धता, या सर्वर-साइड लॉजिक में बग जैसी समस्याओं का सामना करना पड़ सकता है, जिसके परिणामस्वरूप 5xx स्थिति कोड हो सकते हैं।
  • क्लाइंट-साइड त्रुटियां: क्लाइंट अमान्य अनुरोध कर सकता है, जैसे गलत पैरामीटर प्रदान करना या गैर-मौजूद संसाधनों तक पहुंचने का प्रयास करना, जिसके परिणामस्वरूप 4xx स्थिति कोड हो सकते हैं।

इन समस्याओं के निवारण के लिए, आप समस्या के मूल कारण की जांच करने और इसे हल करने के लिए उचित कार्रवाई करने के लिए नेटवर्क स्निफ़र्स, ब्राउज़र डेवलपर टूल और सर्वर-साइड लॉग जैसे टूल का उपयोग कर सकते हैं।

निष्कर्ष

यह समझना कि एपीआई कैसे काम करता है, आपको एक साधारण HTTP अनुरोध में शामिल जटिलताओं की सराहना करने में मदद करता है। डीएनएस लुकअप से लेकर टीसीपी हैंडशेक और सर्वर-साइड प्रोसेसिंग से लेकर क्लाइंट-साइड हैंडलिंग तक, हर बार जब आप एपीआई एंडपॉइंट पर पहुंचते हैं तो बहुत कुछ होता है।

एक डेवलपर के रूप में, इन अवधारणाओं की ठोस समझ न केवल आपको एक बेहतर कोडर बनाएगी बल्कि आपको मुद्दों को अधिक प्रभावी ढंग से डीबग करने में भी मदद करेगी। इसलिए अगली बार जब आप एपीआई के साथ काम करें, तो अपने डेटा की यात्रा और उस जटिल प्रक्रिया को याद रखें जो इसे संभव बनाती है।

विज्ञप्ति वक्तव्य यह लेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/shanu001x/how-apis-work-under-the-hood-68m?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3