जावास्क्रिप्ट Fetch एपीआई

इस ट्यूटोरियल में आप जावास्क्रिप्ट फ़िंच एपीआई और अतुल्यकालिक HTTP अनुरोध बनाने के लिए इसका उपयोग करने के बारे में जानेंगे।

अंग्रेजी संस्करण: https://www.javascripttutorial.net/javascript-fetch-api/

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

यदि आपने पहले ही ऑब्जेक्ट XMLHttpRequest( XHR) के साथ काम किया है , तो Fetch API ऑब्जेक्ट के रूप में सभी कार्य कर सकता है XHR।

इसके अलावा, Fetch API बहुत सरल और साफ है। यह Promiseवेब ब्राउज़र के सर्वरों के लिए अनुरोध करने के लिए अधिक लचीली सुविधाएँ प्रदान करने के लिए उपयोग करता है।

यह विधि fetch()वैश्विक स्कोप में उपलब्ध है जो वेब ब्राउजर्स को URL के लिए अनुरोध भेजने का निर्देश देती है।

निवेदन: निवेदन भेजना

fetch()केवल एक पैरामीटर है कि संसाधन आप खोज करना चाहते का URL है की आवश्यकता है:

विधि fetch()एक Promise(एक वादा) लौटाती है ताकि आप विधियों का उपयोग कर सकें then()और catch():

जब अनुरोध पूरा हो जाता है, तो संसाधन उपलब्ध होगा। उस बिंदु पर, Promiseएक वस्तु को हल किया जाएगा Response।

वस्तु Responseहै एपीआई आवरण खोजा गया संसाधन के लिए। ऑब्जेक्ट Responseमें प्रतिक्रिया के निरीक्षण के लिए उपयोगी कई गुण और तरीके हैं।

जवाब: जवाब पढ़ना

यदि प्रतिक्रिया सामग्री कच्चे पाठ प्रारूप में है, तो आप विधि का उपयोग कर सकते हैं text()। यह विधि खोजे गए संसाधन की पूरी सामग्री के साथ हल करने वाली विधि text()लौटाती है Promise:

व्यवहार में, आप आमतौर पर async/awaitविधि के साथ उपयोग करते हैं fetch(), जैसे:

इसके अलावा करने के लिए विधि text(), वस्तु Responseजैसे अन्य तरीकों है json(), blob(), formData()और arrayBuffer()अपने डेटा प्रकार के साथ सौदा करने के लिए।

प्रतिक्रिया स्थिति कोड से निपटना

ऑब्जेक्ट Responseगुण के माध्यम से स्थिति कोड और स्थिति पाठ प्रदान करता है statusऔर statusText। जब कोई अनुरोध सफल होता है, तो कोड statusहै 200और statusTextहै OK:

परिणाम:

यदि अनुरोधित संसाधन मौजूद नहीं है, तो प्रतिक्रिया कोड 404 होगा:

परिणाम:

यदि अनुरोधित URL सर्वर त्रुटि उत्पन्न करता है, तो प्रतिक्रिया कोड होगा 500।

यदि अनुरोधित URL को एक प्रतिक्रिया के साथ एक नए पर पुनर्निर्देशित किया जाता है 300-309, तो वस्तु की स्थिति Responseनिर्धारित की जाएगी 200। इसके अलावा, पुनर्निर्देशित संपत्ति पर सेट किया जाएगा true।

fetch()रिटर्न एक Promiseजो जब इस तरह के एक ब्राउज़र टाइमआउट के रूप में एक असली विफलता, किसी नेटवर्क कनेक्शन खो दिया है या CORS का उल्लंघन को खारिज कर दिया।

जावास्क्रिप्ट लायें एपीआई उदाहरण

मान लें कि आपके पास jsonनिम्न सामग्री के साथ वेब सर्वर पर स्थित एक फ़ाइल है:

और इस तरह एक HTML पेज:

में app.js, हम fetch()उपयोगकर्ता के डेटा को प्राप्त करने और <div>कक्षा के साथ तत्व के अंदर डेटा को प्रस्तुत करने के लिए विधि का उपयोग करेंगे container।

सबसे पहले, उस फ़ंक्शन को घोषित करें जिसे getUsers()आप users.jsonसर्वर से देख रहे हैं ।

फिर, उस फ़ंक्शन को विकसित करें renderUsers()जो उपयोगकर्ता डेटा प्रदान करता है:

परिणाम:

सारांश

  • लायें एपीआई आप एसिंक्रोनस रूप से एक संसाधन अनुरोध करने के लिए अनुमति देता है।
  • fetch()किसी वस्तु को हल करने वाला वादा वापस करने के लिए विधि का उपयोग करें Response। वास्तविक डेटा प्राप्त करने के लिए, आप ऑब्जेक्ट के तरीकों में से एक को कहते हैं Response, उदाहरण के लिए, text()या json()। इन तरीकों को वास्तविक डेटा में हल किया जाता है।
  • स्थिति और प्रतिक्रिया स्थिति के पाठ को प्राप्त करने के लिए गुणों statusऔर statusTextऑब्जेक्ट Responseका उपयोग करें ।
  • विफलता अनुरोध को संभालने के लिए विधि catch()या निर्देश try...catchका उपयोग करें ।

नीचे दिए गए लिंक पर क्लिक करके मेरे द्वारा लिखे गए अन्य जावास्क्रिप्ट ट्यूटोरियल की एक श्रृंखला देखें:

जावास्क्रिप्ट ट्यूटोरियल

Suggested posts

मेरे सबसे अधिक उपयोग किए जाने वाले कोडिंग संसाधन

मेरे सबसे अधिक उपयोग किए जाने वाले कोडिंग संसाधन

इस सप्ताह, मुझे दैनिक ईमेल सूची के एक सदस्य से एक ईमेल प्राप्त हुआ। वे जानना चाहते थे: आप दैनिक, साप्ताहिक और मासिक किन संसाधनों पर जाते हैं? बढ़िया सवाल! मुझे अपने वर्कफ़्लो और मेरे द्वारा उपयोग किए जाने वाले शीर्ष संसाधनों के बारे में कुछ अंतर्दृष्टि साझा करने का प्रयास करने में प्रसन्नता हो रही है।

लिट लाइब्रेरी सीरीज़ - 1: लिट-एचटीएमएल लाइब्रेरी में एक गहरा गोता

लिट लाइब्रेरी सीरीज़ - 1: लिट-एचटीएमएल लाइब्रेरी में एक गहरा गोता

इस ब्लॉग श्रृंखला का उद्देश्य लिट लाइब्रेरी में गहराई से जाना और इसकी अनूठी विशेषताओं की व्यापक समझ हासिल करना है और यह कैसे खुद को बाजार में अन्य पुस्तकालयों और रूपरेखाओं से अलग करता है। श्रृंखला को तीन भागों में बांटा गया है, जैसे कि 1.

Related posts

ईसाइयों का उत्पीड़न: घृणा अपराध जिसकी हम बात नहीं करते

इस्लामोफोबिया के बारे में भूल जाइए: ईसाई (और यहूदी) धार्मिक घृणा अपराधों के मुख्य शिकार हैं।

ईसाइयों का उत्पीड़न: घृणा अपराध जिसकी हम बात नहीं करते

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

क्यों कुछ फ्रीलांसर अपने जीवन को नकली बना रहे हैं

क्यों कुछ फ्रीलांसर अपने जीवन को नकली बना रहे हैं

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

रीथिंकिंग मीडिया: मैककेनी के पांच सत्य और संचार का भविष्य

आज की हाइपर-कनेक्टेड दुनिया में, मीडिया सिस्टम जनता की राय को आकार देने में महत्वपूर्ण भूमिका निभाते हैं, और परिणामस्वरूप, लोकतांत्रिक निर्णय लेने में। संचार की राजनीतिक अर्थव्यवस्था के अपने गहन विश्लेषण में, विद्वान रॉबर्ट मैककेनी पारंपरिक ज्ञान को चुनौती देते हैं और मीडिया के बारे में "पांच सत्य" को प्रस्तुत करते हैं।

"मारियाना ट्रेंच का अनावरण: रसातल के भयानक छिपे हुए सत्य का अनावरण"

"मारियाना ट्रेंच का अनावरण: रसातल के भयानक छिपे हुए सत्य का अनावरण"

परिचय: आपका स्वागत है, बहादुर पाठकों, एक ऐसी यात्रा में जो हमें हमारे ग्रह की सबसे गहरी गहराइयों तक ले जाएगी। इस ब्लॉग में, हम मारियाना ट्रेंच की गूढ़ दुनिया में तल्लीन हैं, इसके छिपे हुए रहस्यों को उजागर करते हैं और इसकी सतह के नीचे मौजूद हड्डी-द्रुतशीतन सत्य को उजागर करते हैं।