Export (0) Print
Expand All

HttpWebRequest.Proxy Property

Gets or sets proxy information for the request.

Namespace:  System.Net
Assembly:  System (in System.dll)

abstract Proxy : IWebProxy with get, set 
override Proxy : IWebProxy with get, set

Property Value

Type: System.Net.IWebProxy
The IWebProxy object to use to proxy the request. The default value is set by calling the GlobalProxySelection.Select property.


Proxy is set to a null reference (Nothing in Visual Basic).


The request has been started by calling GetRequestStream, BeginGetRequestStream, GetResponse, or BeginGetResponse.


The caller does not have permission for the requested operation.

The Proxy property identifies the WebProxy object to use to process requests to Internet resources. To specify that no proxy should be used, set the Proxy property to the proxy instance returned by the GlobalProxySelection.GetEmptyWebProxy method.

The local computer or application config file may specify that a default proxy be used. If the Proxy property is specified, then the proxy settings from the Proxy property override the local computer or application config file and the HttpWebRequest instance will use the proxy settings specified. If no proxy is specified in a config file and the Proxy property is unspecified, the HttpWebRequest class uses the proxy settings inherited from Internet Explorer on the local computer. If there are no proxy settings in Internet Explorer, the request is sent directly to the server.

The HttpWebRequest class parses a proxy bypass list with wildcard characters inherited from Internet Explorer the same as the bypass list is parsed directly by Internet Explorer. For example, the HttpWebRequest class will parse a bypass list of "nt*" from Internet Explorer as a regular expression of "nt.*". So a URL of "http://nt.com" would bypass the proxy using the HttpWebRequest class and using Internet Explorer.

The HttpWebRequest class supports local proxy bypass. The class considers a destination to be local if any of the following conditions are met:

  • The destination contains a flat name (no dots in the URL).

  • The destination contains a loopback address (Loopback or IPv6Loopback) or the destination contains an IPAddress assigned to the local computer.

  • The domain suffix of the destination matches the local computer's domain suffix (DomainName).

Changing the Proxy property after the request has been started by calling the GetRequestStream, BeginGetRequestStream, GetResponse, or BeginGetResponse method throws an InvalidOperationException. For information on the proxy element see <defaultProxy> Element (Network Settings).

The following code example uses the Proxy method to get the proxy information for the request.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

© 2014 Microsoft