HttpWebResponse.GetResponseHeader(String) 方法

定義

取得隨回應傳回的標頭內容。

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

參數

headerName
String

要傳回的標頭值。

傳回

String

所指定標頭的內容。

例外狀況

目前的執行個體已經過處置。

範例

此範例會建立 Web 要求和查詢回應。 如果網站需要驗證,此範例會以挑戰字串回應。 此字串是使用 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

備註

使用 GetResponseHeader 擷取特定標頭的內容。 您必須指定要傳回的標頭。

適用於