mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-01-11 21:10:32 +01:00
Add support for compressed requests, such as GZIP or DEFLATE #252
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ezarko on GitHub (Feb 21, 2020).
I did a quick search in the code and see an HttpClient with these settings, but I am assuming that is used by the proxy. Can the server itself handle an incoming request with has been GZIP'd?
@ezarko commented on GitHub (Feb 25, 2020):
So an issue which we were having was resolved when we stopped sending it GZIP'd, so I guess that is the answer. Can we add support for GZIP/Deflate to the server?
@StefH commented on GitHub (Feb 25, 2020):
@ezarko commented on GitHub (Feb 25, 2020):
I took a swing at it and created https://github.com/WireMock-Net/WireMock.Net/pull/430. I decided to let CI build it for me. Let's see what we get.
@ezarko commented on GitHub (Mar 12, 2020):
So I tried this in https://github.com/WireMock-Net/WireMock.Net/pull/430 ... The issue that I ran into has to do with framework version compatibility. I have the more or less correct approach, but it needs a little dedicated hand holding.
@StefH commented on GitHub (Mar 13, 2020):
I think it's easier to just view the
Content-Encodingheader and decide to automatically decompress this bytes in the BodyParser.cs file.I'll take a look.
@StefH commented on GitHub (Mar 14, 2020):
@ezarko Can you try preview version on MyGet :
WireMock.Net.1.1.10-ci-12887? This version should support gzip and deflate in the request@StefH commented on GitHub (Mar 19, 2020):
@ezarko Did you have time to test this new version?
See https://github.com/WireMock-Net/WireMock.Net/wiki/MyGet-preview-versions
@StefH commented on GitHub (Mar 25, 2020):
@ezarko Can you please test if this works for you?
@StefH commented on GitHub (Apr 1, 2020):
@ezarko Can you please test if this works for you?
@StefH commented on GitHub (Apr 8, 2020):
Hello @ezarko , did you have time yet to test this ?
@ezarko commented on GitHub (Apr 10, 2020):
@StefH sorry for taking so long to get back to you. If you can provide a Docker image, or give me instructions on how to build one myself using the preview version, I can get this tested next week.
Alternatively I can see about creating a test for it, if that helps. It should be as simple as:
echo ‘{“foo”:”bar”}’ | gzip -c | curl -H’Content-Type: application/json’ -H’Content-Encoding: Gzip’ --data-binary @-
Or you could prepare a gzip-ed file and put it in a test class as an array of bytes or whatever.
@StefH commented on GitHub (Apr 10, 2020):
I've already build a test like this:
So I think we are good to go.
I will merge the PR and create a new Docker image this weekend and close this PR.
Just test it when you have time, and if you still find an problem, just create an issue.
@StefH commented on GitHub (Apr 10, 2020):
https://github.com/WireMock-Net/WireMock.Net/pull/439