क्रैश कोर्स 101
10 मॉड्यूल
5 सप्ताह

बाहरी एपीआई अनुरोध

कॉपी करने के लिए क्लिक करें

व्यवहार में Appmaster.io का उपयोग करके बाहरी API अनुरोध भेजना


बहुत ज्यादा सिद्धांत नहीं?

आइए इसे व्यवहार में लाएं। आइए AppMaster खोलें, इसका उपयोग करके एक API अनुरोध बनाएं, और यह बेहतर ढंग से समझें कि यह अनुरोध कैसे काम करता है।

बाहरी एपीआई अनुरोध का निर्माण

External API Request

एपीआई अनुरोध "व्यावसायिक तर्क" अनुभाग में, "बाहरी एपीआई अनुरोध" टैब में बनाए जाते हैं।

"+ नया एपीआई अनुरोध" पर क्लिक करने का समय आ गया है

New API Request

नाम और विवरण कुछ भी सेट किया जा सकता है, वे केवल हमारे व्यक्तिगत उपयोग के लिए हैं।

आइए उस डेटा से निपटें जो वास्तव में मायने रखता है।

अनुरोध बनाने के लिए आवश्यक न्यूनतम इसकी विधि और पता (यूआरएल) निर्दिष्ट करना है। आइए आखिरी से शुरू करते हैं।

URL and Method

यूआरएल

यूआरएल - यूनिफ़ॉर्म रिसोर्स लोकेटर। इंटरनेट पर किसी विशेष संसाधन को दिया गया पता। ऐसे संसाधन का सबसे परिचित संस्करण एक HTML पृष्ठ है - हम ब्राउज़र के पता बार में इसका URL दर्ज करते हैं और वांछित साइट खोलते हैं। उसी समय, संसाधन स्वयं कुछ भी हो सकता है, चित्र, वीडियो, डेटा सेट। मुख्य बात यह है कि इस संसाधन में एक विशिष्ट सूचक है - एक URL जिस पर आप इस संसाधन को प्राप्त करने के लिए अनुरोध भेज सकते हैं।

तरीकों

इसके पते पर डेटा का जिक्र करते हुए, हम अनुरोध की विधि (आप प्रकार भी कह सकते हैं) का संकेत देते हैं, यानी हम इंगित करते हैं कि वास्तव में इस डेटा के साथ क्या करने की आवश्यकता है।

जब हमने पहले मॉड्यूल के कार्य के लिए अनुरोध भेजा, तो हमें डेटा प्राप्त हुआ। यह जीईटी विधि है। यह विधि सबसे स्पष्ट विधि है और एकमात्र आवश्यक भी है। इसलिए, भले ही हमने इसे स्पष्ट रूप से निर्दिष्ट नहीं किया हो, फिर भी यह डिफ़ॉल्ट रूप से माना जाता था कि यह GET था।

आइए देखें कि अन्य तरीके क्या मौजूद हैं।

Request methods

HTTP मानक स्वयं उपयोग की जा सकने वाली विधियों की संख्या को सीमित नहीं करता है। साथ ही, संगतता बनाए रखने के लिए अभी भी कुछ सबसे मानक विधियों का उपयोग किया जाता है। 5 अलग-अलग तरीके हैं जिनका उपयोग AppMaster API अनुरोधों में किया जा सकता है।

प्राप्त करें । इससे पहले ही निपटा जा चुका है। विधि संसाधन के प्रावधान का अनुरोध करती है, और डेटा प्राप्त करती है।

पोस्ट । कहीं से डेटा लेने के लिए आपको सबसे पहले इस डेटा को वहां रखना होगा। POST विधि बस यही करती है। सर्वर को डेटा भेजता है, संसाधन बनाता है।

डाल । POST पद्धति के समान, लेकिन इसका काम डेटा को अपडेट करना है। यह नया डेटा नहीं बनाता है, लेकिन मौजूदा डेटा को बदल देता है, इसे अपडेट करता है।

हटाएं । जैसा कि नाम से पता चलता है, यह डेटा को हटा देता है।

पैच । विधि PUT के समान है, लेकिन इसका उपयोग डेटा को पूरी तरह से बदलने के बजाय आंशिक रूप से अपडेट करने के लिए किया जाता है। उदाहरण के लिए, पैच विधि का उपयोग करके, आप किसी लेख का शीर्षक बदल सकते हैं, या कुछ पैरामीटर का मान बदल सकते हैं।

इस तथ्य पर विचार करना महत्वपूर्ण है कि सर्वर को बिल्कुल वही करने की आवश्यकता नहीं है जो विधि में निर्दिष्ट है। हम किसी पेज का एड्रेस DELETE मेथड से भेज सकते हैं, लेकिन इसका मतलब यह नहीं है कि सर्वर वास्तव में इसे डिलीट कर देगा। लेकिन, विशुद्ध रूप से सैद्धांतिक रूप से, वह GET कमांड के साथ ऐसा कर सकता है। या कुछ भी न बदलें, लेकिन साथ ही POST के जवाब में डेटा भेजें। सिर्फ इसलिए कि डेवलपर ने इसे इस तरह से कॉन्फ़िगर किया है।

यह वह जगह है जहां आरईएसटी खेल में आता है, जो कहता है कि यह आदेश के पालन पर सहमत होने का समय है, गड़बड़ी को रोकें और विधि में इंगित किया गया है। कम से कम, यह मुख्य कार्य होना चाहिए (हालांकि जरूरी नहीं कि केवल एक ही हो)। उदाहरण के लिए, GET पद्धति का उपयोग करके किसी लेख की सामग्री को स्थानांतरित करते समय, आप उसी समय उसके विचारों की संख्या के काउंटर को 1 से बढ़ा सकते हैं।

इसलिए, हमने पता लगाया कि डेटा कहाँ स्थित है और इसके साथ क्या किया जा सकता है। आइए आगे बढ़ते हैं, देखते हैं कि अनुरोध के अन्य घटक क्या हो सकते हैं।

यूआरएल पैराम्स

Request components

यूआरएल पैराम्स । ऐसी स्थितियां हैं जहां हम केवल यूआरएल का हिस्सा जानते हैं। एक उदाहरण Appmaster.io वेबसाइट पर लेख है। सभी लेखों का आरंभिक पता एक ही है - https://appmaster.io/blog/ । लेकिन फिर प्रत्येक लेख का अपना शीर्षक होता है और तदनुसार, इस विशेष लेख के सटीक संकेत के लिए इसका अपना अलग हिस्सा होता है।

ऐसे में URL Params का इस्तेमाल किया जाता है। हम सामान्य भाग को तुरंत निर्धारित करते हैं, और बाकी को प्रक्रिया में तय करने के लिए छोड़ देते हैं। परिणामस्वरूप, URL https://appmaster.io/blog/:id/ के रूप में लिखा जाता है

ज्ञात भाग को जैसा है वैसा ही लिखा जाता है, और चर भाग को ":" चिह्न के बाद रखा जाता है। इस चर भाग का नाम (पहले से ही ":" के बिना) मापदंडों की सूची में जोड़ा जाता है। इस मामले में, कई चर भाग हो सकते हैं, और उनका स्थान URL में कहीं भी होता है।

Query params

क्वेरी पैराम्स

क्वेरी पैरामीटर । याद रखें जब हमने पहले मॉड्यूल में Boredapi.com को एक अनुरोध भेजा था? और पते के अलावा, अतिरिक्त डेटा निर्धारित किया गया था। वह क्वेरी पैराम्स था।

वे URL के बाद लिखे गए हैं और इससे "?" द्वारा अलग किए गए हैं। संकेत। पैरामीटर का नाम, चिह्न "=" और पैरामीटर का मान ही इंगित किया गया है। यदि एक साथ कई मापदंडों का उपयोग किया जाता है, तो उन्हें "&" चिह्न से अलग किया जाता है।

हालांकि, AppMaster में पैरामीटर निर्दिष्ट करते समय, आपको अनुरोध नियमों के बारे में सोचने की आवश्यकता नहीं है। सब कुछ ठीक से स्वचालित रूप से स्वरूपित हो जाएगा। आपको केवल पैरामीटर का नाम निर्दिष्ट करने और उसे सूची में जोड़ने की आवश्यकता है।

क्वेरी पैरामीटर का उपयोग तब किया जाता है जब डेटा स्रोत समान होता है, लेकिन डेटा स्वयं भिन्न हो सकता है। उदाहरण के लिए, Boredapi में करने के लिए चीजों की एक विशाल सूची है। लेकिन हम केवल उन लोगों में रुचि रखते थे जो एक व्यक्ति के लिए अभिप्रेत हैं और यही हमने अनुरोध मापदंडों में निर्दिष्ट किया है।

एक अन्य उपयोग मामला डेटा की मात्रा को सीमित करना है। उदाहरण के लिए, हम कुछ सूची तक पहुंच सकते हैं, लेकिन उसमें से केवल पहली 5 प्रविष्टियों का अनुरोध कर सकते हैं। यह मात्रा एक क्वेरी पैरामीटर भी हो सकती है।

एक अन्य विकल्प एक एक्सेस कुंजी है। अल्फावेंटेज का जिक्र करते समय आपने मॉड्यूल 1 में इस विकल्प का इस्तेमाल किया होगा। डेटा केवल पंजीकरण और अनुरोध मापदंडों में एक व्यक्तिगत कुंजी भेजने के बाद प्राप्त किया जा सकता है।

इंटरनेट पर आपके द्वारा देखे जाने वाले पृष्ठों पर ध्यान दें, आप शायद उनमें भी विभिन्न पैरामीटर पाएंगे। उदाहरण के लिए, Ventusky.com का मौसम पृष्ठ खोलें, क्वेरी पैरामीटर में अक्षांश और देशांतर के भौगोलिक मान भेजे जाते हैं।

हेडर

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

ज्यादातर मामलों में, हेडर वैकल्पिक होते हैं। पहले मॉड्यूल में भी, हमने पहले ही एक अनुरोध किया था जहां हमने कोई हेडर निर्दिष्ट नहीं किया था (हालांकि इसका मतलब यह नहीं है कि अनुरोध वास्तव में उनके बिना भेजा गया था)।

शरीर

शरीर । अनुरोध निकाय। GET अनुरोध आमतौर पर इसके बिना होते हैं, लेकिन अगर हम सर्वर को कुछ डेटा भेजना चाहते हैं, POST या PUT अनुरोध भेजें, तो यह डेटा अनुरोध निकाय में रखा जाता है। साथ ही, आप अनुरोध निकाय में किसी भी जटिलता का डेटा रख सकते हैं, उदाहरण के लिए, एक वीडियो फ़ाइल भेजें, और कुछ संख्या या टेक्स्ट स्ट्रिंग तक सीमित न हो।

Was this article helpful?
अभी भी उत्तर की तलाश है?