सर्वर प्रतिक्रिया और डेटा प्रकार
प्रतिक्रिया घटक। स्थिति कोड। बुनियादी डेटा प्रकार
सर्वर से आने वाली प्रतिक्रिया लगभग उसी योजना के अनुसार काम करती है जैसे Request. यह, स्पष्ट कारणों से, कोई अनुरोध पैरामीटर नहीं है, लेकिन हेडर और बॉडी प्रतिक्रिया में शामिल हैं (हालांकि वे खाली हो सकते हैं)।
एक महत्वपूर्ण अंतर प्रतिक्रिया की स्थिति है।
स्थिति कोड
स्थिति कोड । यह सर्वर प्रतिक्रिया की पहली पंक्ति में आता है। स्थिति एक तीन अंकों की संख्या (कोड ही) है, इसके बाद एक वाक्यांश इसे समझाता है।
यह स्थिति कोड द्वारा है कि आप अनुरोध के परिणामों के बारे में पता लगा सकते हैं और समझ सकते हैं कि आगे क्या कार्रवाई की जानी चाहिए।
सभी संभावित स्थिति कोड 5 वर्गों में विभाजित हैं। कोड का पहला अंक किसी विशेष वर्ग से संबंधित निर्धारित करता है। आइए उन्हें तोड़ दें।
1xx - सूचना कोड। अनुरोध की प्रगति की रिपोर्ट करें। वास्तविक व्यवहार में, उनका उपयोग शायद ही कभी किया जाता है।
2xx - सफलता कोड। वे रिपोर्ट करते हैं कि सब कुछ क्रम में है और अनुरोध सफलतापूर्वक पूरा हुआ। GET अनुरोध के जवाब में, हम आमतौर पर 200 (OK) कोड प्राप्त करने की अपेक्षा करते हैं। एक सफल PUT अनुरोध 201 (बनाया गया) कोड भेजता है।
3xx - पुनर्निर्देश। इंगित करें कि अनुरोध किसी भिन्न पते पर भेजा जाना चाहिए। एक उदाहरण कोड 301 (स्थायी रूप से स्थानांतरित) है, यह दर्शाता है कि आवश्यक डेटा अब एक नए पते पर है (नया पता स्वयं स्थान शीर्षलेख में दिया गया है)।
4xx — क्लाइंट त्रुटि कोड। उनमें से सबसे प्रसिद्ध - 404 (नहीं मिला), रिपोर्ट करता है कि निर्दिष्ट पते पर कोई आवश्यक डेटा नहीं है। अन्य सामान्य मामले: 400 (खराब अनुरोध, अनुरोध में सिंटैक्स त्रुटि), 401 (अनधिकृत, एक्सेस के लिए आवश्यक प्रमाणीकरण), 403 (निषिद्ध, एक्सेस अस्वीकृत)।
5xx - सर्वर त्रुटि कोड। सर्वर साइड पर किसी त्रुटि की रिपोर्ट करें। एक उदाहरण के रूप में: 500 (आंतरिक सर्वर त्रुटि, कोई भी समझ में न आने वाली त्रुटि जिसे ज्ञात कोड के लिए जिम्मेदार नहीं ठहराया जा सकता है), 503 (सेवा अनुपलब्ध, सर्वर तकनीकी कारणों से अनुरोध को संसाधित करने में अस्थायी रूप से असमर्थ है)
डेटा के प्रकार
इस बिंदु पर, हम मान सकते हैं कि हमने REST API और HTTP अनुरोधों और प्रतिक्रियाओं की संरचना को समझने के लिए बुनियादी जानकारी का अध्ययन किया है। यह केवल एक बिंदु - डेटा प्रकार को स्पष्ट करने के लिए बनी हुई है। यदि आपने पहले ही AppMaster में अपना API अनुरोध बनाने का प्रयास किया है, तो आपने शायद देखा है कि सभी डेटा (पैरामीटर में, हेडर में, बॉडी में) आपको न केवल नाम, बल्कि डेटा प्रकार भी निर्दिष्ट करने के लिए कहते हैं।
यह आम तौर पर मानव के लिए बहुत स्पष्ट है कि डेटा के साथ कैसे काम करना है, क्योंकि एक निश्चित संदर्भ है। मान लीजिए हम जानते हैं कि 2 + 2 = 4। हम अनुमान लगाते हैं कि ये संख्याएँ हैं और योग का परिणाम दूसरी संख्या होगी।
लेकिन यह नंबर नहीं हो सकता है, लेकिन टेक्स्ट डेटा हो सकता है। तब उनके जोड़ का परिणाम स्ट्रिंग्स का संयोजन हो सकता है और 2 + 2 "22" में बदल जाएगा। यहां, ताकि कंप्यूटर को कुछ भी सोचना न पड़े, डेटा प्रकार का सटीक संकेत मिलता है। साथ ही अन्य कार्यों को भी हल किया जा रहा है। उदाहरण के लिए, गलत डेटा दर्ज करने से सुरक्षा प्रदान की जाती है; प्रारंभ में, किसी फ़ोन नंबर के नंबर दर्ज करने के उद्देश्य से फ़ील्ड में ई-मेल पता पंजीकृत करने का कोई अवसर नहीं है।
बहुत सारे अलग-अलग डेटा प्रकार हैं, अब हम सबसे बुनियादी लोगों पर विचार करेंगे, और पाठ्यक्रम के आगे के मॉड्यूल में हम बाकी से परिचित होंगे।
स्ट्रिंग - स्ट्रिंग डेटा प्रकार, बिना किसी विशेष स्वरूपण के सादा पाठ।
पूर्णांक - पूर्णांक डेटा प्रकार। काउंटर या गणना के लिए इस्तेमाल किया जा सकता है जहां भिन्नात्मक संख्याओं की आवश्यकता नहीं होती है
फ्लोट - फ्लोटिंग पॉइंट नंबर। इसका उपयोग वहां किया जाता है जहां बढ़ी हुई सटीकता की आवश्यकता होती है और पूर्णांक मान पर्याप्त नहीं होते हैं।
यहां एक तार्किक सवाल उठ सकता है। और हमेशा फ्लोट का उपयोग क्यों न करें, फिर हमें इंटीजर की आवश्यकता क्यों है? लेकिन अधिक सटीकता के लिए अधिक संसाधनों की आवश्यकता होती है। कुछ छोटी गणनाओं के लिए यह पूरी तरह से अदृश्य हो सकता है, लेकिन बड़ी मात्रा में डेटा के मामले में, उचित डेटा प्रकार का उपयोग करने से कंप्यूटिंग शक्ति और डिस्क स्थान की आवश्यकताओं को काफी कम किया जा सकता है।
बूलियन - बूलियन डेटा प्रकार। सबसे सरल डेटा प्रकार। यह दो में से एक मान लेता है, जिसे True या False लिखा जाता है। आप अक्सर पदनाम को 1 (सत्य) और 0 (गलत) के रूप में देख सकते हैं।