मेरे पास आईआईएस 7.5 पर होस्ट की गई .NET 3.5 वेबसाइट है।डब्ल्यूसीएफ वेब सेवा में जीजेपी संपीड़न
मेरे पास एक क्लाइंट एप्लिकेशन है जो इस webservice से कनेक्ट होता है।
मैं बदल (क्लाइंट अनुप्रयोग में) httpWebRequest.Create विधि GZip के लिए automaticDecompression जोड़ने के लिए है, लेकिन यह काम नहीं कर रहा
WebRequest IWebRequestCreate.Create(Uri uri)
{
HttpWebRequest httpWebRequest =
Activator.CreateInstance(
typeof(HttpWebRequest),
BindingFlags.CreateInstance | BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance,
null,
new object[] { uri, null },
null) as HttpWebRequest;
if (httpWebRequest == null)
return null;
httpWebRequest.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate");
httpWebRequest.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
return httpWebRequest;
}
इस तरह से अनुरोध सही ढंग से भेजा जाता है, इस सवाल का जवाब gzip में एन्कोड किया गया है (मैं इसे फ़िडलर से देखें), लेकिन कोई अपवाद होती है:
Response is not wellformed XML
(मुझे लगता है कि ग्राहक जवाब)
डिकोड नहीं है, तो मैं यह पंक्ति निकालना, के रूप में MSDN प्रलेखीकरण
httpWebRequest.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate");
जवाब GZip इनकोडिंग नहीं है (और अनुरोध में कोई Accept-Encoding शीर्षलेख है)
आईआईएस के लिए किसी भी सेवा की मेजबानी की संपीड़न समर्थन जोड़ने के लिए एक की सम्भावना होनी चाहिए जोड़ें। कस्टम कोडिंग के माध्यम से GZip संपीड़न को लागू करने का कोई तरीका नहीं है। –
ये .. ठीक है .. और मैं डब्ल्यूसीएफ वेबसाइसेस में जीज़िप संपीड़न का उपयोग कैसे कर सकता हूं? क्योंकि मुझे बहुत सारे टेक्स्ट डेटा स्थानांतरित करना है .. – AndreaCi
मैं लगभग 2-3 साल पहले इस पूरे दर्दनाक प्रक्रिया के माध्यम से चला गया। मुझे मिला समाधान खोजने की कोशिश कर रहे थे, लेकिन अब तक कोई भाग्य नहीं है। इस बीच +1। – leppie