2010-07-21 11 views
19

क्या सामग्री-लंबाई शीर्षलेख सेट करना संभव है और चंक किए गए स्थानांतरण एन्कोडिंग का भी उपयोग करना संभव है? और क्या ऐसा कर रहा है जब ग्राहक का उपयोग करते समय ग्राहक की प्रतिक्रिया की लंबाई को जानने की समस्या को हल नहीं किया जाता है?चंकित एन्कोडिंग और सामग्री-लंबाई शीर्षलेख

जिस परिदृश्य के बारे में मैं सोच रहा हूं वह तब होता है जब आपके पास स्थानांतरण करने के लिए एक बड़ी फ़ाइल होती है और इसके आकार को निर्धारित करने में कोई समस्या नहीं होती है, लेकिन यह पूरी तरह से buffered होने के लिए बहुत बड़ा है। (यदि आप चंकित नहीं कर रहे हैं, तो पूरी प्रतिक्रिया को पहले buffered मिलना चाहिए? सही ??)

धन्यवाद।

+3

आप किसी RFC संदर्भ या ऐसा ही कुछ का उल्लेख कर सकता है, यह बहुत अच्छा होगा प्राप्त कर सकते हैं। – p00ya00

उत्तर

22

1) नहीं: "संदेशों में सामग्री-लंबाई शीर्षलेख फ़ील्ड और गैर-पहचान स्थानांतरण-कोडिंग दोनों शामिल नहीं होनी चाहिए। अगर संदेश में गैर-पहचान स्थानांतरण-कोडिंग शामिल है, तो सामग्री-लंबाई को अनदेखा किया जाना चाहिए। " (RFC 2616, Section 4.4)

2) और नहीं, आप सामग्री-लंबाई और स्ट्रीम का उपयोग कर सकते हैं; प्रोटोकॉल इस बात को बाधित नहीं करता है कि आपका कार्यान्वयन कैसे काम करता है।

+0

मुझे आशा है कि खंडित स्थानांतरण एन्कोडिंग स्ट्रीम के लिए एक उदाहरण है; आपने यहां उल्लेख किया है? इसमें रेंज अनुरोध भी शामिल हो सकते हैं। क्या मैं सही हू? –

7

ठीक है, आप हमेशा फ़ाइल के आकार को बताते हुए एक शीर्षलेख भेज सकते हैं। कुछ response.addHeader("File-Size","size of the file");
और सामग्री-लंबाई शीर्षलेख को अनदेखा करें।

ग्राहक कार्यान्वयन इस मूल्य को पढ़ने के लिए बदलाव किया जाना है, लेकिन हे तुम दोनों बातें आप चाहते हैं :)

+0

सरल समाधान सबसे अच्छे हैं :-) – EZDsIt

+1

सम्मेलन किसी भी गैर-मानक शीर्षलेख पर 'एक्स -' उपसर्ग का उपयोग करना है। एक HTTP प्रॉक्सी आपके गैर-मानक गैर-एक्स शीर्षलेख को छोड़ने का निर्णय ले सकता है। – MSalters

+0

धन्यवाद एमएसल्टर्स, बस कहीं और इसी तरह के दिशानिर्देश के संदर्भ में, इसकी सराहना करते हैं। – Gyan

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