2012-11-26 21 views
17

मैं खंडित मोड में डेटा भेजने की कोशिश कर रहा हूं। सभी शीर्षलेख ठीक से सेट होते हैं और डेटा तदनुसार एन्कोड किया जाता है। ब्राउज़र मेरी प्रतिक्रिया को एक खंडित व्यक्ति के रूप में पहचानते हैं, हेडर स्वीकार करते हैं और डेटा प्राप्त करना प्रारंभ करते हैं।चंकित स्थानांतरण एन्कोडिंग - ब्राउज़र व्यवहार

मुझे उम्मीद थी कि ब्राउजर प्रत्येक प्राप्त खंड पर पेज अपडेट करेगा, इसके बजाय यह तब तक इंतजार कर रहा है जब तक कि सभी भाग प्राप्त नहीं होते हैं, फिर उन्हें सभी प्रदर्शित करते हैं। क्या यह अपेक्षित व्यवहार है?

मैं प्राप्त होने के बाद प्रदर्शित प्रत्येक खंड को देखने की उम्मीद कर रहा था। curl का उपयोग करते समय, प्रत्येक खंड को प्राप्त होने के ठीक बाद दिखाया जाता है। जीयूआई ब्राउज़र के साथ ऐसा क्यों नहीं होता है? क्या वे कुछ प्रकार के बफरिंग/कैश का उपयोग कर रहे हैं?

मैंने Cache-Control शीर्षलेख no-cache पर सेट किया है, इसलिए यह सुनिश्चित नहीं है कि यह कैश के बारे में है।

+0

आप कौन से ब्राउज़र्स देख रहे हैं? आम तौर पर ब्राउज़र _will_ वृद्धिशील प्रतिपादन करते हैं, लेकिन वे आंतरिक रूप से कुछ चीजों को बफर कर सकते हैं क्योंकि रिलेआउट महंगा हैं ... –

+0

आप किस प्रकार के डेटा को भागों में भेज रहे हैं? क्या यह सिर्फ HTML है या आप स्क्रिप्ट डेटा भेज रहे हैं? – qqx

+0

मैं 'टेक्स्ट/एचटीएमएल' भेज रहा हूं। फ़ायरफ़ॉक्स और क्रोम पर कोशिश की। दोनों भाग प्राप्त करने का इंतजार कर रहे हैं। –

उत्तर

13

afaik ब्राउज़रों को प्राप्त होने वाले भाग को शुरू करने के लिए कुछ पेलोड की आवश्यकता होती है।
कर्ल निश्चित रूप से एक अपवाद है।

अपने पहले खंड से पहले 1 केबी मनमानी डेटा भेजने का प्रयास करें।

यदि आप सब कुछ सही तरीके से कर रहे हैं, तो ब्राउज़र को प्राप्त होने वाले हिस्सों को प्रस्तुत करना चाहिए।

+0

यय !!! वह यह था! फ़ायरफ़ॉक्स, क्रोम, सफारी, यहां तक ​​कि ओपेरा में पूरी तरह से काम करता है! आपका बहुत बहुत धन्यवाद। –

+0

धन्यवाद आदमी, आपने मेरा दिन बचाया! – Jekis

+0

1KiB वास्तव में एक अच्छा सामान्य मूल्य है, अधिक जानकारी के लिए यहां देखें: http://stackoverflow.com/q/16909227/1534459 – bodo

0

ब्राउज़र डेटा को संसाधित और प्रस्तुत कर सकता है क्योंकि यह डेटा आता है या नहीं। चाहे कोई ब्राउज़र प्रतिक्रिया डेटा प्रस्तुत करता हो, डेटा संरचना का एक कार्य और यह किस तरह के बफरिंग को नियोजित करता है। जैसे ब्राउज़र एक छवि प्रस्तुत करने से पहले, इसमें दस्तावेज़ (या पर्याप्त दस्तावेज), स्टाइल शीट इत्यादि होना चाहिए।

चंकिंग अधिक उपयोगी होती है जब संसाधन की लंबाई संसाधन संसाधन के समय अज्ञात होती है उत्पन्न होता है (प्रतिक्रिया सामग्री में "सामग्री-लंबाई" शामिल नहीं किया जा सकता है) और संसाधन स्थानांतरित होने के बाद सर्वर कनेक्शन को बंद नहीं करना चाहता है।