दिलचस्प पोस्ट
कैसे जावास्क्रिप्ट का उपयोग कर नियमित अभिव्यक्ति विशेष अक्षर से बचने के लिए? कॉन्फ़िगरेशन सिस्टम को आरंभ करने में विफल एक रिलेशनल डेटाबेस में ठीक है ना? कस्टम ऑब्जेक्ट्स के एंड्रॉइड में अर्रे एडाप्टर का उपयोग कैसे करें मैं स्विफ्ट के साथ एक UIImage में एक पिक्सेल का रंग कैसे प्राप्त करूं? किसी दृश्य रीफ्रेश को बिना किसी बलपूर्वक ट्रिगर होने के बावजूद कैसे मजबूती? Jquery या javascript वाले ऑब्जेक्ट की सरणी कैसे सॉर्ट करें PHP में एक तिथि बढ़ाने का सबसे आसान तरीका? प्रवेश 2007 वीबीए में "ओपन फाइल" संवाद कैसे दिखाया जाए? जावा: सरणी समानता पर कैसे परीक्षण करें? सी / सी ++: स्ट्रिंग स्थिरांक के लिए पॉइंटर्स का अनुकूलन JAXB विखंडू में बड़े XML फ़ाइलों को पार्स कर सकते हैं Mysql_insert_id का उपयोग करने के लिए सुरक्षित है? अपवाद प्राप्त करना "IllegalStateException: इस क्रिया को सवेव इनस्टेंसस्टेट के बाद नहीं किया जा सकता" कैसे JFrame पृष्ठभूमि पारदर्शी सेट करने के लिए, लेकिन JPanel या JLabel पृष्ठभूमि अपारदर्शी?

स्वचालित रूप से वेबक्लिएन्ट के माध्यम से gzip प्रतिक्रिया को खारिज करें। डाउनलोडडाटा

मैं स्वत: जीज़िपेड प्रतिक्रिया को असम्परोड करना चाहता हूं मैं निम्नलिखित स्निपेट का उपयोग कर रहा हूं:

mywebclient.Headers[HttpRequestHeader.AcceptEncoding] = "gzip"; mywebclient.Encoding = Encoding.UTF8; try { var resp = mywebclient.DownloadData(someUrl); } 

मैंने HttpRequestHeader enum जांच की है, और Headers माध्यम से ऐसा करने का कोई विकल्प नहीं है

मैं स्वचालित रूप से resp को दबाना कैसे कर सकता हूं? या क्या कोई अन्य फ़ंक्शन है mywebclient.DownloadData उपयोग मैं mywebclient.DownloadData बजाय करना चाहिए?

वेब के समाधान से एकत्रित समाधान "स्वचालित रूप से वेबक्लिएन्ट के माध्यम से gzip प्रतिक्रिया को खारिज करें। डाउनलोडडाटा"

WebClient कवर के तहत HttpWebRequest का उपयोग करता है और HttpWebRequest gzip / deflate decompression का समर्थन करता है। HttpWebRequest स्वत: प्रतिलिपि संपत्ति देखें

हालांकि, वेब क्लाइंट क्लास सीधे इस प्रॉपर्टी को बेनकाब नहीं करता है तो आपको अंतर्निहित HttpWebRequest पर संपत्ति सेट करने के लिए इसे से प्राप्त करना होगा।

 class MyWebClient : WebClient { protected override WebRequest GetWebRequest(Uri address) { HttpWebRequest request = base.GetWebRequest(address) as HttpWebRequest; request.AutomaticDecompression = DecompressionMethods.Deflate | DecompressionMethods.GZip; return request; } } 

आपकी स्थिति के आधार पर, अपने आप को डीकंप्रेसन करना आसान हो सकता है

 using System.IO.Compression; using System.Net; try { var client = new WebClient(); client.Headers[HttpRequestHeader.AcceptEncoding] = "gzip"; var responseStream = new GZipStream(client.OpenRead(myUrl), CompressionMode.Decompress); var reader = new StreamReader(responseStream); var textResponse = reader.ReadToEnd(); // do stuff } 

मैंने स्पष्टता के लिए सभी अस्थायी चर बनाए। यह सब केवल client और textResponse लिए चपटा हो सकता है

या, यदि सादगी का लक्ष्य है, तो आप सर्विस स्टैक का उपयोग करके यह भी कर सकते हैं। पाठ डेमिस बेलोट द्वारा :

 using ServiceStack.Text; var resp = "some url".GetJsonFromUrl(); 

(अन्य हैं .Get*FromUrl एक्सटेंशन विधियों से)