2011-06-01 8 views

उत्तर

5

प्रोटोकॉल स्तर पर HTTP अनुरोध निकाय को gzipped नहीं किया जा सकता है, क्योंकि क्लाइंट को यह जानने का कोई तरीका नहीं है कि सर्वर इसका समर्थन करता है या नहीं; यह सर्वर प्रतिक्रिया के लिए काम करता है क्योंकि क्लाइंट अनुरोध में इंगित करता है कि एक gzipped प्रतिक्रिया निकाय स्वीकार किया जा सकता है या नहीं। (भविष्य में ऐसा कुछ किया जा सकता है जैसे Expect: 100-continue काम करता है, लेकिन यह वह स्थिति नहीं है जिसकी हमें आज सामना करना पड़ रहा है)।

आवेदन स्तर पर, आप निश्चित रूप से अनुरोध निकाय को जीज़ कर सकते हैं। लेकिन यह NSURLConnection के दायरे से बाहर होगा।

+0

दिलचस्प। क्या आप 'NSURLConnection' के साथ भेजे जाने वाले अनुरोध को गजिप करने का उदाहरण दिखा सकते हैं? या, मुझे एक और लाइब्रेरी का उपयोग करना होगा, जैसे [ASIHTTP, जो POST & PUT के लिए अनुरोध निकायों के gzip संपीड़न का समर्थन करता है] (http://allseeing-i.com/ASIHTTPRequest/How-to-use#using_gzip_to_compress_request_bodies)? – ma11hew28

0

मैं आमतौर पर ASIHTTPRequests पर NSURLRequests का उपयोग करने के लिए सभी हूं, लेकिन एएसआई इस मामले को संभालता है। HTTP अनुरोध संपीड़न ऐसा कुछ नहीं है जिसे आप सुरक्षित रूप से हर समय उपयोग कर सकते हैं। आप यह पता नहीं लगा सकते कि कोई सर्वर मार्ग पर सही तरीके से इसे संभालेगा या नहीं। यहां तक ​​कि यदि आप इसे सही तरीके से संभालने के लिए अपाचे सेटअप प्राप्त करते हैं, तो यह अलग-अलग मॉड्यूल पर अनुरोध करते समय विफल हो जाएगा क्योंकि वे इसे सही तरीके से संभाल नहीं सकते हैं।

http://allseeing-i.com/ASIHTTPRequest/How-to-use#using_gzip_to_compress_request_bodies

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