WebHeaderCollection.Set メソッド

定義

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

オーバーロード

Set(HttpRequestHeader, String)

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

Set(HttpResponseHeader, String)

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

Set(String, String)

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

Set(HttpRequestHeader, String)

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

public:
 void Set(System::Net::HttpRequestHeader header, System::String ^ value);
public void Set (System.Net.HttpRequestHeader header, string? value);
public void Set (System.Net.HttpRequestHeader header, string value);
override this.Set : System.Net.HttpRequestHeader * string -> unit
Public Sub Set (header As HttpRequestHeader, value As String)

パラメーター

header
HttpRequestHeader

設定する HttpRequestHeader 値。The HttpRequestHeader value to set.

value
String

設定するヘッダーの内容。The content of the header to set.

例外

.NET Framework および .NET Core バージョン 2.0 - 3.1 のみ: value の長さが 65535 文字を超えています。.NET Framework and .NET Core versions 2.0 - 3.1 only: The length of value is greater than 65535.

この WebHeaderCollection インスタンスは、HttpRequestHeader のインスタンスを許可しません。This WebHeaderCollection instance does not allow instances of HttpRequestHeader.

注釈

ヘッダーに指定されたヘッダーが存在しない場合、 Set メソッドはヘッダーの名前と値のペアのリストに新しいヘッダーを挿入します。If the header specified in the header does not exist, the Set method inserts a new header into the list of header name/value pairs.

に指定されているヘッダー header が既に存在する場合は、 value 既存の値を置き換えます。If the header specified in header is already present, value replaces the existing value.

注意

の長さ value は .NET Framework と .Net Core バージョン 2.0-3.1 でのみ検証されます。The length of value is validated only in .NET Framework and .NET Core versions 2.0 - 3.1.

適用対象

Set(HttpResponseHeader, String)

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

public:
 void Set(System::Net::HttpResponseHeader header, System::String ^ value);
public void Set (System.Net.HttpResponseHeader header, string? value);
public void Set (System.Net.HttpResponseHeader header, string value);
override this.Set : System.Net.HttpResponseHeader * string -> unit
Public Sub Set (header As HttpResponseHeader, value As String)

パラメーター

header
HttpResponseHeader

設定する HttpResponseHeader 値。The HttpResponseHeader value to set.

value
String

設定するヘッダーの内容。The content of the header to set.

例外

.NET Framework および .NET Core バージョン 2.0 - 3.1 のみ: value の長さが 65535 文字を超えています。.NET Framework and .NET Core versions 2.0 - 3.1 only: The length of value is greater than 65535.

この WebHeaderCollection インスタンスは、HttpResponseHeader のインスタンスを許可しません。This WebHeaderCollection instance does not allow instances of HttpResponseHeader.

注釈

ヘッダーに指定されたヘッダーが存在しない場合、 Set メソッドはヘッダーの名前と値のペアのリストに新しいヘッダーを挿入します。If the header specified in the header does not exist, the Set method inserts a new header into the list of header name/value pairs.

に指定されているヘッダー header が既に存在する場合は、 value 既存の値を置き換えます。If the header specified in header is already present, value replaces the existing value.

注意

の長さ value は .NET Framework と .Net Core バージョン 2.0-3.1 でのみ検証されます。The length of value is validated only in .NET Framework and .NET Core versions 2.0 - 3.1.

適用対象

Set(String, String)

指定したヘッダーを指定した値に設定します。Sets the specified header to the specified value.

public:
 override void Set(System::String ^ name, System::String ^ value);
public override void Set (string name, string? value);
public override void Set (string name, string value);
override this.Set : string * string -> unit
Public Overrides Sub Set (name As String, value As String)

パラメーター

name
String

設定するヘッダー。The header to set.

value
String

設定するヘッダーの内容。The content of the header to set.

例外

namenull または Empty です。name is null or Empty.

.NET Framework および .NET Core バージョン 2.0 - 3.1 のみ: value の長さが 65535 文字を超えています。.NET Framework and .NET Core versions 2.0 - 3.1 only: The length of value is greater than 65535.

name が制限付きヘッダーです。name is a restricted header.

- または --or- name または value に無効な値が含まれています。name or value contain invalid characters.

次の例では、メソッドを使用して、 Set 既存のヘッダーの値を設定します。The following example uses the Set method to set the value of an existing header.

try
{
   // Create a web request for S"www.msn.com".
   HttpWebRequest^ myHttpWebRequest = dynamic_cast<HttpWebRequest^>(WebRequest::Create( "http://www.msn.com" ));

   // Get the headers associated with the request.
   WebHeaderCollection^ myWebHeaderCollection = myHttpWebRequest->Headers;

   // Set the Cache-Control header in the request.
   myWebHeaderCollection->Set( "Cache-Control", "no-cache" );

   // Get the associated response for the above request.
   HttpWebResponse^ myHttpWebResponse = dynamic_cast<HttpWebResponse^>(myHttpWebRequest->GetResponse());
   Console::WriteLine( "Headers after 'Set' method is used on Cache-Control :" );

   // Print the headers for the request.
   PrintHeaders( myWebHeaderCollection );
   myHttpWebResponse->Close();
}
// Catch exception if trying to set a restricted header.
catch ( ArgumentException^ e ) 
{
   Console::WriteLine( "ArgumentException is thrown. Message is : {0}", e->Message );
}
catch ( WebException^ e ) 
{
   Console::WriteLine( "WebException is thrown. Message is : {0}", e->Message );
   if ( e->Status == WebExceptionStatus::ProtocolError )
   {
      Console::WriteLine( "Status Code : {0}", (dynamic_cast<HttpWebResponse^>(e->Response))->StatusCode );
      Console::WriteLine( "Status Description : {0}", (dynamic_cast<HttpWebResponse^>(e->Response))->StatusDescription );
      Console::WriteLine( "Server : {0}", (dynamic_cast<HttpWebResponse^>(e->Response))->Server );
   }
}
catch ( Exception^ e ) 
{
   Console::WriteLine( "Exception is thrown. Message is : {0}", e->Message );
}
try {
    // Create a web request for "www.msn.com".
    HttpWebRequest myHttpWebRequest = (HttpWebRequest) WebRequest.Create("http://www.msn.com");

    // Get the headers associated with the request.
    WebHeaderCollection myWebHeaderCollection = myHttpWebRequest.Headers;

    // Set the Cache-Control header in the request.
    myWebHeaderCollection.Set("Cache-Control", "no-cache");

    // Get the associated response for the above request.
    HttpWebResponse myHttpWebResponse = (HttpWebResponse) myHttpWebRequest.GetResponse();

    Console.WriteLine ("Headers after 'Set' method is used on Cache-Control :");
    // Print the headers for the request.
    PrintHeaders(myWebHeaderCollection);
    myHttpWebResponse.Close();
}
// Catch exception if trying to set a restricted header.
catch(ArgumentException e) {
    Console.WriteLine("ArgumentException is thrown. Message is :" + e.Message);
}
catch(WebException e) {
    Console.WriteLine("WebException is thrown. Message is :" + e.Message);
    if(e.Status == WebExceptionStatus.ProtocolError) {
        Console.WriteLine("Status Code : {0}", ((HttpWebResponse)e.Response).StatusCode);
        Console.WriteLine("Status Description : {0}", ((HttpWebResponse)e.Response).StatusDescription);
        Console.WriteLine("Server : {0}", ((HttpWebResponse)e.Response).Server);
    }
}
catch(Exception e) {
    Console.WriteLine("Exception is thrown. Message is :" + e.Message);
}
Public Shared Sub Main()

Try
        'Create a web request for "www.msn.com".
        Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create("http://www.msn.com"), HttpWebRequest)
        
        'Get the headers associated with the request.
        Dim myWebHeaderCollection As WebHeaderCollection = myHttpWebRequest.Headers
        
        'Set the Cache-Control header in the request.
        myWebHeaderCollection.Set("Cache-Control", "no-cache")

        'Get the associated response for the above request.
        Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
        
    Console.WriteLine ("Headers after 'Set' method is used on Cache-Control :")
        'Print the headers for the request.
        PrintHeaders(myWebHeaderCollection)
        myHttpWebResponse.Close()
   'Catch exception if trying to set a restricted header.
    Catch e As ArgumentException
        Console.WriteLine(e.Message)
    Catch e As WebException
        Console.WriteLine(e.Message)
        If e.Status = WebExceptionStatus.ProtocolError Then
            Console.WriteLine("Status Code : {0}", CType(e.Response, HttpWebResponse).StatusCode)
            Console.WriteLine("Status Description : {0}", CType(e.Response, HttpWebResponse).StatusDescription)
            Console.WriteLine("Server : {0}", CType(e.Response, HttpWebResponse).Server)
        End If
    Catch e As Exception
        Console.WriteLine(e.Message)
    End Try
End Sub

注意

の長さ value は .NET Framework と .Net Core バージョン 2.0-3.1 でのみ検証されます。The length of value is validated only in .NET Framework and .NET Core versions 2.0 - 3.1.

注釈

ヘッダーに指定されたヘッダーが存在しない場合、 Set メソッドはヘッダーの名前と値のペアのリストに新しいヘッダーを挿入します。If the header specified in the header does not exist, the Set method inserts a new header into the list of header name/value pairs.

に指定されているヘッダー header が既に存在する場合は、 value 既存の値を置き換えます。If the header specified in header is already present, value replaces the existing value.

適用対象