WebRequest Class

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Makes a request to a Uniform Resource Identifier (URI). This is an abstract class.

Inheritance Hierarchy

System.Object
  System.Net.WebRequest
    System.Net.HttpWebRequest

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

Syntax

'Declaration
Public MustInherit Class WebRequest
public abstract class WebRequest

The WebRequest type exposes the following members.

Constructors

  Name Description
Protected methodSupported by Silverlight for Windows Phone WebRequest Initializes a new instance of the WebRequest class.

Top

Properties

  Name Description
Public property ContentLength When overridden in a descendant class, gets or sets the content length of the request data being sent.
Public propertySupported by Silverlight for Windows Phone ContentType When overridden in a descendant class, gets or sets the content type of the request data being sent.
Public propertySupported by Silverlight for Windows Phone CreatorInstance When overridden in a descendant class, gets the factory object derived from the IWebRequestCreate class used to create the WebRequest instantiated for making the request to the specified URI.
Public propertySupported by Silverlight for Windows Phone Credentials When overridden in a descendant class, gets or sets the network credentials used for authenticating the request with the Internet resource.
Public propertySupported by Silverlight for Windows Phone Headers When overridden in a descendant class, gets or sets the collection of header name/value pairs associated with the request.
Public propertySupported by Silverlight for Windows Phone Method When overridden in a descendant class, gets or sets the protocol method to use in this request.
Public propertySupported by Silverlight for Windows Phone RequestUri When overridden in a descendant class, gets the URI of the Internet resource associated with the request.
Public propertySupported by Silverlight for Windows Phone UseDefaultCredentials When overridden in a descendant class, gets or sets a Boolean value that controls whether default credentials are sent with requests.

Top

Methods

  Name Description
Public methodSupported by Silverlight for Windows Phone Abort Aborts the Request.
Public methodSupported by Silverlight for Windows Phone BeginGetRequestStream When overridden in a descendant class, provides an asynchronous method to request a stream.
Public methodSupported by Silverlight for Windows Phone BeginGetResponse When overridden in a descendant class, begins an asynchronous request for an Internet resource.
Public methodStatic memberSupported by Silverlight for Windows Phone Create(String) Initializes a new WebRequest instance for the specified URI scheme.
Public methodStatic memberSupported by Silverlight for Windows Phone Create(Uri) Initializes a new WebRequest instance for the specified URI scheme.
Public methodStatic memberSupported by Silverlight for Windows Phone CreateHttp(String) Initializes a new HttpWebRequest instance for the specified URI string.
Public methodStatic memberSupported by Silverlight for Windows Phone CreateHttp(Uri) Initializes a new HttpWebRequest instance for the specified URI.
Public methodSupported by Silverlight for Windows Phone EndGetRequestStream When overridden in a descendant class, returns a Stream for writing data to the Internet resource.
Public methodSupported by Silverlight for Windows Phone EndGetResponse When overridden in a descendant class, returns a WebResponse.
Public methodSupported by Silverlight for Windows Phone Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows Phone Finalize Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodSupported by Silverlight for Windows Phone GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public methodSupported by Silverlight for Windows Phone GetType Gets the Type of the current instance. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows Phone MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public methodStatic memberSupported by Silverlight for Windows Phone RegisterPrefix Registers a WebRequest descendant for the specified URI.
Public methodSupported by Silverlight for Windows Phone ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Remarks

WebRequest is the abstract base class for the .NET Framework's request/response model for accessing data from the Internet. An application that uses the request/response model can request data from the Internet in a protocol-agnostic manner, in which the application works with instances of the WebRequest class while protocol-specific descendant classes carry out the details of the request.

Requests are sent from an application to a particular URI, such as a Web page on a server. The URI determines the proper descendant class to create from a list of WebRequest descendants registered for the application. WebRequest descendants are typically registered to handle a specific protocol, such as HTTP or HTTPS, but can be registered to handle a request to a specific server or path on a server.

The WebRequest class throws a WebException when errors occur while accessing an Internet resource. The Status property is one of the WebExceptionStatus values that indicates the source of the error.

When Status is UnknownError, additional details about the protocol specific response error may be available using the Response property. If the Response property is not null, this indicates that the remote server responded with an error code. In this case, the Response property can be queried for more specific information about the response.

Because the WebRequest class is an abstract class, the actual behavior of a WebRequest instance at run time is determined by the descendant class returned by Create method. For more information about default values and exceptions, see the documentation for the descendant classes, such as HttpWebRequest.

NoteNote:

Use the Create method to initialize new WebRequest instances. Do not use the WebRequest constructor.

Notes to Inheritors

When you inherit from WebRequest, you must override the following members: Method, RequestUri, Headers, ContentType, Credentials, Abort, BeginGetRequestStream, EndGetRequestStream, BeginGetResponse, and EndGetResponse. In addition, you must provide an implementation of the IWebRequestCreate interface, which defines the Create method used when you call Create. You must register the class that implements the IWebRequestCreate interface, using the RegisterPrefix method.

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Thread Safety

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