一、接收请求
[HttpPost]
public string PostAsync()
{
var stream = HttpContext.Request.Body;
var requData = new byte[HttpContext.Request.ContentLength.Value];
await stream.ReadAsync(requData, 0, requData.Length);
return GzipHandler.ReadGzip(requData);
}
二、解压内容
public static string ReadGzip(byte[] data)
{
string result = string.Empty;
using (MemoryStream ms = new MemoryStream(data))
{
using GZipStream gzipStream = new GZipStream(ms, CompressionMode.Decompress);
using StreamReader sr = new StreamReader(gzipStream, Encoding.UTF8);
result = sr.ReadToEnd();
}
return result;
}