Capturing Go Traffic


Product Version 1.0.0 and above
3rd-party tool Go
Supported OS macOS, Linux, Windows


Fiddler captures different traffic but I cannot capture localhost HTTP traffic generated from a Go application.


Fiddler Everywhere respects global variables like HTTP_PROXY which are also used by the HttpProxy and useProxy in the Go language.

However, a known limitation is that the above Go methods won't respect the proxy variables for traffic going through localhost or

... As a special case, if req.URL.Host is "localhost" or a loopback address (with or without a port number), then a nil URL and nil error will be returned.

To overcome the above limitation, you can explicitly overwrite the hosts file in your operating system and provide a custom alias for the localhost traffic.

For example:

Open the hosts file on macOS

open ~/etc/hosts

or open the hosts file on Windows

start c:/Windows/System32/Drivers/etc/hosts

Then add an alias like local for the localhost address local

Finally, open your Go application and substitute any mentions of localhost or with the new alias local.