I am testing an application and unfortunately we have some encoding issues, e.g. the HTTP Content-Type header does not match the HTML <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> or does not match the XML encoding.

I wonder if there is

  • a proxy for Windows (7 SP1 x64 at least)
  • that is gratis
  • and identifies charset issues for XML (e.g. according to RFC 3023, if XML)
  • and identifies charset issues for HTML (optional since I don't need that urgently)
  • gives me a list of requested URLs where the HTTP header encoding and content encoding do not match. All other requests can be discarded after forwarding.

At the same time, it would be awesome if it could correct the problems, e.g. make the header and content match, so that I can continue in testing the application. Otherwise I get stuck quite frequently.

(In addition, such an encoding correction could successfully provide evidence to my claim that it would work if the encoding were corrected)

1 Answer 1


I think for this you will need a proxy that is extensible, and you'd need to write some code to do the actual XML verification / modification.

WinGate proxy server has an API and SDK which you can use to write modifying filters for HTTP. If you have VS2010, you can run a app wizard to set up the filtering hooks, and you pretty much only need to write the validation / modification logic.

You can find more about our SDK here

WinGate has a free 10 user license so you may not even need a license (except maybe the SDK license which allows you to load unsigned manifest files)

Disclaimer: I work for Qbik who are the authors of WinGate

  • I just installed it and tried to set up a routing from a closed testing network through my laptop into our wireless guest network with Internet connection (without doing any XML modifications first). Routing works only once, then I have to uninstall the TCP pipe service and reinstall it to work once again. WinGate crashed 2 times. Commented Jul 6, 2016 at 12:58
  • Hi, is this using a TCP mapping filter?
    – Adrien
    Commented Jul 6, 2016 at 13:21
  • What I mean is did you install the WinGate SDK, and write a filter for the TCP mapping service to do the XML modifications. If you have a crash bug in your DLL you can take down the host process (WinGate service).
    – Adrien
    Commented Jul 6, 2016 at 13:26
  • OK, normally it's straightforward, but if you have multiple subnets etc then routing can come into play. Obviously it's a concern you managed to get WinGate to crash, were any crash dump files created in the WinGate program folder? We maybe should move this to our support desk (support.qbik.com)
    – Adrien
    Commented Jul 6, 2016 at 13:43
  • One thing to keep in mind. If you're intercepting port 80 for http, and you have a WWW proxy running on port 80, and you also create a TCP mapping proxy (is that what you mean by tcp pipe service) also on port 80 then you may get a port conflict, which could explain why it only works once for you. It's difficult to advise without some details about your test setup. We're happy to help, please contact (support.qbik.com) or email our support desk ([email protected])
    – Adrien
    Commented Jul 6, 2016 at 23:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.