2015-03-19 3 views
6

के बीच क्या अंतर bodyparser.urlencoded(options)body-parser में एक फ़ंक्शन है, इसमें विस्तारित विकल्प है।qs और querystring

विस्तारित विकल्प क्वेरी स्ट्रिंग पुस्तकालय के साथ URL- एनकोडेड डेटा पार्स करने के बीच चयन करने के लिए अनुमति देता है (जब गलत) या qs पुस्तकालय (जब सच है)। "विस्तारित" वाक्यविन्यास अमीर वस्तुओं और सरणी के लिए यूआरएल-एन्कोडेड प्रारूप में एन्कोड किए जाने की अनुमति देता है, जो कि JSON-like URL-encoded के साथ अनुभव की अनुमति देता है। अधिक जानकारी के लिए, कृपया qs लाइब्रेरी देखें।

मैं qs और querystring दस्तावेज़ पढ़ा था, लेकिन मैं किसी भी स्पष्ट अंतर नहीं मिल सकता है, इसलिए मैं यहाँ मदद के लिए पूछ रहा हूँ।

उत्तर

8

विस्तारित प्रोटोकॉल x-www-form-urlencoded डेटा को पार्स करने के लिए qs लाइब्रेरी का उपयोग करता है। क्यू का मुख्य लाभ यह है कि यह किसी भी जेसन जैसी डेटा संरचना को क्रमबद्ध करने में सक्षम, बहुत शक्तिशाली धारावाहिक/deserialization एल्गोरिदम का उपयोग करता है।

लेकिन वेब ब्राउज़र आमतौर पर इस प्रोटोकॉल का उपयोग नहीं करते हैं, क्योंकि x-www-form-urlencoded को फ्लैट HTML रूपों को क्रमबद्ध करने के लिए डिज़ाइन किया गया था। हालांकि, अगर आप AJAX का उपयोग करके समृद्ध डेटा संरचनाएं भेजने जा रहे हैं तो यह आसान हो सकता है।

क्वेरीस्ट्रिंग लाइब्रेरी मूलभूत क्रमबद्धता/deserialization एल्गोरिदम प्रदान करता है, जो सभी वेब ब्राउज़र द्वारा फॉर्म डेटा को क्रमबद्ध करने के लिए उपयोग किया जाता है। यह मूल एल्गोरिदम विस्तारित एक से काफी सरल है, लेकिन फ्लैट डेटा संरचनाओं तक ही सीमित है।

दोनों एल्गोरिदम फ्लैट डेटा के साथ बिल्कुल वही काम करते हैं।

संबंधित मुद्दे