2011-12-24 19 views
6

HTTP शीर्षलेख में बहु-पंक्ति हो सकती है।मल्टी-लाइन HTTP शीर्षलेख भ्रम

उदाहरण के लिए:

शब्द-के दिन: फॉक्स
          से अधिक       भूरे कुत्ते कूद।

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

मैं इस तरह की स्थितियों में HTTP मानों के पार्सिंग को कैसे संभाल सकता हूं, यानी मैं एक-पंक्ति शीर्षलेख के समान HTTP-मल्टीलाइन हेडर को कैसे जोड़ूं?

उत्तर

12

the से पहले व्हाइटस्पेस न तो अग्रणी और न ही पीछे है।

Section 4.2 of the standard अग्रणी/पीछे की सफेद जगह को परिभाषित करता है "क्षेत्रीय मूल्य के पहले गैर-सफेद स्थान के चरित्र या फ़ील्ड-वैल्यू के अंतिम गैर-व्हाइटस्पेस चरित्र के बाद" रैखिक सफेद स्थान "होता है। यह स्थान फ़ील्ड मान के पहले चरित्र से पहले और न ही अंतिम के बाद है।

फ़ील्ड मान के अंदर इस तरह के रैखिक सफेद स्थान के लिए नियम यह है कि "फ़ील्ड मान को समझने या संदेश को डाउनस्ट्रीम अग्रेषित करने से पहले इसे" एक [स्पेस] से बदला जा सकता है। "

तो हमें "ब्राउन कुत्ते पर फॉक्स कूदता है" मिलता है।

+0

मैंने इसे पढ़ा, यह निश्चित रूप से एक डंप पर देखा जब यह एक अग्रणी सफेद जगह की तरह लग रहा था। मध्य के रूप में इसके बारे में नहीं सोचा क्योंकि यह एक रेखा की शुरुआत थी। – unixman83