Bewerken

Delen via


HttpWebResponse.GetResponseHeader(String) Method

Definition

Gets the contents of a header that was returned with the response.

public:
 System::String ^ GetResponseHeader(System::String ^ headerName);
public string GetResponseHeader (string headerName);
member this.GetResponseHeader : string -> string
Public Function GetResponseHeader (headerName As String) As String

Parameters

headerName
String

The header value to return.

Returns

The contents of the specified header.

Exceptions

The current instance has been disposed.

Examples

This example creates a Web request and queries for a response. If the site requires authentication, this example will respond with a challenge string. This string is extracted using GetResponseHeader.

void GetPage( String^ url )
{
   try
   {
      Uri^ ourUri = gcnew Uri( url );
      // Creates an HttpWebRequest for the specified URL.
      HttpWebRequest^ myHttpWebRequest = (HttpWebRequest^)( WebRequest::Create( ourUri ) );
      HttpWebResponse^ myHttpWebResponse = (HttpWebResponse^)( myHttpWebRequest->GetResponse() );
      Console::WriteLine( "\nThe server did not issue any challenge.  Please try again with a protected resource URL." );
      // Releases the resources of the response.
      myHttpWebResponse->Close();
   }
   catch ( WebException^ e ) 
   {
      HttpWebResponse^ response = (HttpWebResponse^)( e->Response );
      if ( response != nullptr )
      {
         if ( response->StatusCode == HttpStatusCode::Unauthorized )
         {
            String^ challenge = nullptr;
            challenge = response->GetResponseHeader( "WWW-Authenticate" );
            if ( challenge != nullptr )
                        Console::WriteLine( "\nThe following challenge was raised by the server: {0}", challenge );
         }
         else
         {
            Console::WriteLine( "\nThe following WebException was raised : {0}", e->Message );
         }
      }
      else
      {
         Console::WriteLine( "\nResponse Received from server was 0" );
      }
   }
   catch ( Exception^ e ) 
   {
      Console::WriteLine( "\nThe following Exception was raised : {0}", e->Message );
   }
}
   public static void GetPage(String url)
    {
    try
            {	
                Uri ourUri = new Uri(url);
                // Creates an HttpWebRequest for the specified URL.
                HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(ourUri);
                HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
                Console.WriteLine("\nThe server did not issue any challenge.  Please try again with a protected resource URL.");
                // Releases the resources of the response.
                myHttpWebResponse.Close();
            }
        catch(WebException e)
           {
                HttpWebResponse response = (HttpWebResponse)e.Response;
                if (response != null)
                {
                    if (response.StatusCode == HttpStatusCode.Unauthorized)
                    {
                        string challenge = null;
                        challenge= response.GetResponseHeader("WWW-Authenticate");
                        if (challenge != null)
                            Console.WriteLine("\nThe following challenge was raised by the server:{0}",challenge);
                    }
                    else
                {
                    Console.WriteLine("\nThe following WebException was raised : {0}",e.Message);
                }
            }
                else
            {
                Console.WriteLine("\nResponse Received from server was null");
            }
        }
        catch(Exception e)
        {
            Console.WriteLine("\nThe following Exception was raised : {0}",e.Message);
        }
    }
}
Public Shared Sub GetPage(url As [String])
Try
        Dim ourUri As New Uri(url)
        ' Creates an HttpWebRequest for the specified URL. 
        Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(ourUri), HttpWebRequest)
        Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
        Console.WriteLine(ControlChars.NewLine + "The server did not issue any challenge.  Please try again with a protected resource URL.")
        ' Releases the resources of the response.
        myHttpWebResponse.Close()
    Catch e As WebException
        Dim response As HttpWebResponse = CType(e.Response, HttpWebResponse)
        If Not (response Is Nothing) Then
            If response.StatusCode = HttpStatusCode.Unauthorized Then
                Dim challenge As String = Nothing
                challenge = response.GetResponseHeader("WWW-Authenticate")
                If Not (challenge Is Nothing) Then
                    Console.WriteLine(ControlChars.NewLine + "The following challenge was raised by the server:{0}", challenge)
                End If
            Else
                Console.WriteLine(ControlChars.NewLine + "The following exception was raised : {0}", e.Message)
            End If
        Else
            Console.WriteLine(ControlChars.NewLine + "Response Received from server was null")
        End If 
    Catch e As Exception
        Console.WriteLine(ControlChars.NewLine + "The following exception was raised : {0}", e.Message)
    End Try
End Sub

Remarks

Use GetResponseHeader to retrieve the contents of particular headers. You must specify which header you want to return.

Applies to