Export (0) Print
Expand All

WebProxy Class

Contains HTTP proxy settings for the WebRequest class.

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

[SerializableAttribute]
public ref class WebProxy : IWebProxy, 
	ISerializable

The WebProxy type exposes the following members.

  NameDescription
Public methodWebProxy()Initializes an empty instance of the WebProxy class.
Public methodWebProxy(String)Initializes a new instance of the WebProxy class with the specified URI.
Public methodWebProxy(Uri)Initializes a new instance of the WebProxy class from the specified Uri instance.
Protected methodWebProxy(SerializationInfo, StreamingContext)Initializes an instance of the WebProxy class using previously serialized content.
Public methodWebProxy(String, Boolean)Initializes a new instance of the WebProxy class with the specified URI and bypass setting.
Public methodWebProxy(String, Int32)Initializes a new instance of the WebProxy class with the specified host and port number.
Public methodWebProxy(Uri, Boolean)Initializes a new instance of the WebProxy class with the Uri instance and bypass setting.
Public methodWebProxy(String, Boolean, array<String>)Initializes a new instance of the WebProxy class with the specified URI, bypass setting, and list of URIs to bypass.
Public methodWebProxy(Uri, Boolean, array<String>)Initializes a new instance of the WebProxy class with the specified Uri instance, bypass setting, and list of URIs to bypass.
Public methodWebProxy(String, Boolean, array<String>, ICredentials)Initializes a new instance of the WebProxy class with the specified URI, bypass setting, list of URIs to bypass, and credentials.
Public methodWebProxy(Uri, Boolean, array<String>, ICredentials)Initializes a new instance of the WebProxy class with the specified Uri instance, bypass setting, list of URIs to bypass, and credentials.
Top

  NameDescription
Public propertyAddressGets or sets the address of the proxy server.
Public propertyBypassArrayListGets a list of addresses that do not use the proxy server.
Public propertyBypassListGets or sets an array of addresses that do not use the proxy server.
Public propertyBypassProxyOnLocalGets or sets a value that indicates whether to bypass the proxy server for local addresses.
Public propertyCredentialsGets or sets the credentials to submit to the proxy server for authentication.
Public propertyUseDefaultCredentialsGets or sets a Boolean value that controls whether the DefaultCredentials are sent with requests.
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodStatic memberGetDefaultProxy Obsolete. Reads the Internet Explorer nondynamic proxy settings.
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Protected methodGetObjectDataPopulates a SerializationInfo with the data that is needed to serialize the target object.
Public methodGetProxyReturns the proxied URI for a request.
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodIsBypassedIndicates whether to use the proxy server for the specified host.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

  NameDescription
Explicit interface implemetationPrivate methodISerializable::GetObjectDataInfrastructure. Creates the serialization data and context that are used by the system to serialize a WebProxy object.
Top

The WebProxy class contains the proxy settings that WebRequest instances use to determine whether a Web proxy is used to send requests. Global Web proxy settings can be specified in machine and application configuration files, and applications can use instances of the WebProxy class to customize Web proxy use. The WebProxy class is the base implementation of the IWebProxy interface.

To obtain instances of the Web proxy class, you can use any of the following methods:

These methods each supply a WebProxy instance that you can further customize; the difference between them is how the instance is initialized before it is returned to your application. The WebProxy constructor returns an instance of the WebProxy class with the Address property set to nullptr. When a request uses a WebProxy instance in this state, no proxy is used to send the request.

The GetDefaultProxy method returns an instance of the WebProxy class with the Address, BypassProxyOnLocal, and BypassList properties set to the values used by Internet Explorer 5.5 and later.

The Select method returns an instance of the WebProxy class with it properties set according to a combination of Internet Explorer and configuration file settings.

The WebProxy class supports automatic detection and execution of proxy configuration scripts. This feature is also known as Web Proxy Auto-Discovery (WPAD). When using automatic proxy configuration, a configuration script, typically named Wpad.dat, must be located, downloaded, compiled, and run. If these operations are successful, the script returns the proxies that can be used for a request.

The following code example assigns a WebProxy instance to a WebRequest instance. The WebRequest instance uses the proxy to connect to external Internet resources. (For an example that demonstrates using the WPAD feature, see the documentation for the IWebProxyScript class.)

WebProxy^ proxyObject = gcnew WebProxy( "http://proxyserver:80/",true );
WebRequest^ req = WebRequest::Create( "http://www.contoso.com" );
req->Proxy = proxyObject;

.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.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2014 Microsoft