HttpWebRequest.Referer Property

Gets or sets the value of the Referer HTTP header.

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

property String^ Referer {
	String^ get ();
	void set (String^ value);
/** @property */
public String get_Referer ()

/** @property */
public void set_Referer (String value)

public function get Referer () : String

public function set Referer (value : String)

Property Value

The value of the Referer HTTP header. The default value is a null reference (Nothing in Visual Basic).

If the AllowAutoRedirect property is true, the Referer property is set automatically when the request is redirected to another site.

To clear the Referer HTTP header, set the Referer property to a null reference (Nothing in Visual Basic).


The value for this property is stored in WebHeaderCollection. If WebHeaderCollection is set, the property value is lost.

The following code example sets the Referer property.

// Create a 'HttpWebRequest' object.
HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)( WebRequest::Create( myUri ) );
// Set referer property  to .
myHttpWebRequest->Referer = "";
// Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)( myHttpWebRequest->GetResponse() );
// Display the contents of the page to the console.
Stream^ streamResponse = myHttpWebResponse->GetResponseStream();
StreamReader^ streamRead = gcnew StreamReader( streamResponse );
array<Char>^ readBuffer = gcnew array<Char>(256);
int count = streamRead->Read( readBuffer, 0, 256 );
Console::WriteLine( "\nThe contents of HTML page are......." );
while ( count > 0 )
   String^ outputData = gcnew String( readBuffer,0,count );
   Console::Write( outputData );
   count = streamRead->Read( readBuffer, 0, 256 );
Console::WriteLine( "\nHTTP Request  Headers :\n\n {0}", myHttpWebRequest->Headers );
Console::WriteLine( "\nHTTP Response Headers :\n\n {0}", myHttpWebResponse->Headers );
// Release the response object resources.
Console::WriteLine( "Referer to the site is: {0}", myHttpWebRequest->Referer );

// Create a 'HttpWebRequest' object.
HttpWebRequest myHttpWebRequest = (HttpWebRequest)
// Set referer property  to

// Assign the response object of 'HttpWebRequest' to a 
//'HttpWebResponse' variable.
HttpWebResponse myHttpWebResponse = (HttpWebResponse)

// Display the contents of the page to the console.
Stream streamResponse = myHttpWebResponse.GetResponseStream();
StreamReader streamRead = new StreamReader(streamResponse);
char readBuffer[] = new char[256];
int count = streamRead.Read(readBuffer, 0, 256);

Console.WriteLine("\nThe contents of HTML page are.......");
while (count > 0) {
    String outputData = new String(readBuffer, 0, count);
    count = streamRead.Read(readBuffer, 0, 256);
Console.WriteLine("\nHTTP Request  Headers :\n\n{0}", 
Console.WriteLine("\nHTTP Response Headers :\n\n{0}", 

// Release the response object resources.
Console.WriteLine("Referer to the site is:{0}", 

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

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

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

Community Additions