why won't WebProxy BypassProxyOnLocal work for me?

.net, c#, httpwebrequest, webproxy

Solution

I get around this simply by appending a "dot" to localhost, so instead of accessing "localhost", I try to access "localhost." (notice the dot at the end of the hostname)

Credit where credit is due: I got this unusual tip from this thread http://www.west-wind.com/weblog/posts/2009/Jan/14/Monitoring-HTTP-Output-with-Fiddler-in-NET-HTTP-Clients-and-WCF-Proxies#596591

Works fine!

Problem

I'm trying to get HTTP calls I'm making from C# .NET to a local address (localhost:3000) to use the proxy I set (so I can go through fiddler). Using the below WebProxy approach works if I point the target URL to a non-local address, however I need to point it to a local web-server I have (at localhost:3000), and when I do this the request is not going through the proxy. I have inlcuded the "proxyObject.BypassProxyOnLocal = false". This should make it work no? Any suggestions re how to force the request to go through the WebProxy for http calls targetting a local address? ``` WebProxy proxyObject = new WebProxy("http://localhost:8888/", false); proxyObject.Credentials = new NetworkCredential(); proxyObject.BypassProxyOnLocal = false; WebRequest.DefaultWebProxy = proxyObject; var request = (HttpWebRequest)WebRequest.Create(targetUri); // I also included this line as a double check request.Proxy = proxyObject; ``` Subsequent calls do not go through the proxy however, such as when I do: ``` var res = (HttpWebResponse)req.GetResponse(); ``` thanks

Original source