接口接收gzip壓縮數據並解壓

asp.net 接收前端gzip 壓縮後的數據,接收端須要進行解壓前端

public string GetResponseBody(HttpWebResponse response)
       {
           string responseBody = string.Empty;
           if (response.ContentEncoding.ToLower().Contains("gzip"))
           {
               using (GZipStream stream = new GZipStream(response.GetResponseStream(),CompressionMode.Decompress))
               {
                   using (StreamReaderreader = new StreamReader(stream))
                   {
                       responseBody = reader.ReadToEnd();
                   }
               }
           }
           else if (response.ContentEncoding.ToLower().Contains("deflate"))
           {
               using (DeflateStream stream = new DeflateStream(response.GetResponseStream(),CompressionMode.Decompress))
               {
                   using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
                   {
                       responseBody = reader.ReadToEnd();
                   }
               }
           }
           else
           {
               using (Stream stream = response.GetResponseStream())
               {
                   using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
                   {
                       responseBody = reader.ReadToEnd();
                   }
               }
           }
           return responseBody;
       }
相關文章
相關標籤/搜索