Fix request encoding error

This commit is contained in:
2023-09-21 19:40:07 +08:00
parent a71048d905
commit 762bf9cb80
3 changed files with 20 additions and 20 deletions

View File

@ -122,7 +122,7 @@ namespace Eavesdrop
if (requestArgs.Cancel) return;
request = requestArgs.Request;
if (requestArgs.Content != null)
if (requestArgs.Content != null && requestArgs.Content != requestContent)
{
await local.WriteRequestContentAsync(request, requestArgs.Content).ConfigureAwait(false);
}

View File

@ -325,18 +325,18 @@ namespace Eavesdrop.Network
}
Stream input = response.GetResponseStream();
if (response is HttpWebResponse httpResponse && !string.IsNullOrWhiteSpace(httpResponse.ContentEncoding))
{
switch (httpResponse.ContentEncoding)
{
//case "br": input = new BrotliStream(input, CompressionMode.Decompress); break;
case "gzip": input = new GZipStream(input, CompressionMode.Decompress); break;
case "deflate": input = new DeflateStream(input, CompressionMode.Decompress); break;
}
response.Headers.Remove(HttpResponseHeader.ContentLength);
response.Headers.Remove(HttpResponseHeader.ContentEncoding);
response.Headers.Add(HttpResponseHeader.TransferEncoding, "chunked");
}
//if (response is HttpWebResponse httpResponse && !string.IsNullOrWhiteSpace(httpResponse.ContentEncoding))
//{
// switch (httpResponse.ContentEncoding)
// {
// //case "br": input = new BrotliStream(input, CompressionMode.Decompress); break;
// case "gzip": input = new GZipStream(input, CompressionMode.Decompress); break;
// case "deflate": input = new DeflateStream(input, CompressionMode.Decompress); break;
// }
// response.Headers.Remove(HttpResponseHeader.ContentLength);
// response.Headers.Remove(HttpResponseHeader.ContentEncoding);
// response.Headers.Add(HttpResponseHeader.TransferEncoding, "chunked");
//}
return new StreamContent(input, response.ContentLength > 0 ? (int)response.ContentLength : 4096);
}
public static async Task<byte[]> GetPayload(Stream input, long length)

View File

@ -131,14 +131,14 @@ namespace GrasscutterTools.Utils
{
switch (name.ToLower())
{
case "host" : newRequest.Host = request.Host; break;
case "accept" : newRequest.Accept = request.Accept; break;
case "referer" : newRequest.Referer = request.Referer; break;
case "user-agent" : newRequest.UserAgent = request.UserAgent; break;
case "content-type": newRequest.ContentType = request.ContentType; break;
case "content-length": newRequest.ContentLength = request.ContentLength; break;
case "host" : newRequest.Host = request.Host; break;
case "accept" : newRequest.Accept = request.Accept; break;
case "referer" : newRequest.Referer = request.Referer; break;
case "user-agent" : newRequest.UserAgent = request.UserAgent; break;
case "content-type" : newRequest.ContentType = request.ContentType; break;
case "content-length" : newRequest.ContentLength = request.ContentLength; break;
case "if-modified-since": newRequest.IfModifiedSince = request.IfModifiedSince; break;
case "date": newRequest.Date = request.Date; break;
case "date" : newRequest.Date = request.Date; break;
default: newRequest.Headers[name] = request.Headers[name]; break;
}
}