WebHeaderCollection.Set Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Устанавливает заданный заголовок в указанное значение.
Перегрузки
Set(HttpRequestHeader, String) |
Устанавливает заданный заголовок в указанное значение. |
Set(HttpResponseHeader, String) |
Устанавливает заданный заголовок в указанное значение. |
Set(String, String) |
Устанавливает заданный заголовок в указанное значение. |
Set(HttpRequestHeader, String)
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
Устанавливает заданный заголовок в указанное значение.
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.
- value
- String
Содержимое задаваемого заголовка.
Исключения
Только .NET Framework и .NET Core версий 2.0–3.1: длина value
превышает 65 535 символов.
Этот экземпляр WebHeaderCollection не допускает экземпляры класса HttpRequestHeader.
Комментарии
Если заголовок, указанный в заголовке, не существует, Set метод вставляет новый заголовок в список пар имя-значение заголовка.
Если заголовок, указанный в , header
уже присутствует, value
заменяет существующее значение.
Примечание
Длина value
проверяется только в .NET Framework и .NET Core версий 2.0–3.1.
- Во всех применимых версиях .NET Framework: WebHeaderCollection экземпляр, возвращаемый свойством Headers , вызовет исключение , ArgumentOutOfRangeException если длина
value
больше 65535. Все остальные WebHeaderCollection экземпляры принимают объект любойvalue
длины. - В версиях .NET Core до версии 3.1: экземпляр, используемый WebHeaderCollection с любым заголовком типа HttpResponseHeader , вызывает исключение , ArgumentOutOfRangeException если длина
value
превышает 65535. Все остальные WebHeaderCollection экземпляры принимают объект любойvalue
длины. - В .NET 5 и более поздних версиях: WebHeaderCollection принимает объект любой
value
длины.
Применяется к
Set(HttpResponseHeader, String)
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
Устанавливает заданный заголовок в указанное значение.
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.
- value
- String
Содержимое задаваемого заголовка.
Исключения
Только .NET Framework и .NET Core версий 2.0–3.1: длина value
превышает 65 535 символов.
Этот экземпляр WebHeaderCollection не допускает экземпляры класса HttpResponseHeader.
Комментарии
Если заголовок, указанный в заголовке, не существует, Set метод вставляет новый заголовок в список пар имя-значение заголовка.
Если заголовок, указанный в , header
уже присутствует, value
заменяет существующее значение.
Примечание
Длина value
проверяется только в .NET Framework и .NET Core версий 2.0–3.1.
- Во всех применимых версиях .NET Framework: WebHeaderCollection экземпляр, возвращаемый свойством Headers , вызовет исключение , ArgumentOutOfRangeException если длина
value
больше 65535. Все остальные WebHeaderCollection экземпляры принимают объект любойvalue
длины. - В версиях .NET Core до версии 3.1: экземпляр, используемый WebHeaderCollection с любым заголовком типа HttpResponseHeader , вызывает исключение , ArgumentOutOfRangeException если длина
value
превышает 65535. Все остальные WebHeaderCollection экземпляры принимают объект любойvalue
длины. - В .NET 5 и более поздних версиях: WebHeaderCollection принимает объект любой
value
длины.
Применяется к
Set(String, String)
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
Устанавливает заданный заголовок в указанное значение.
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
Задаваемый заголовок.
- value
- String
Содержимое задаваемого заголовка.
Исключения
name
имеет значение null
или Empty.
Только .NET Framework и .NET Core версий 2.0–3.1: длина value
превышает 65 535 символов.
name
— это ограниченный заголовок.
-или-
name
или value
содержат недопустимые символы.
Примеры
В следующем примере метод используется Set для задания значения существующего заголовка.
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.
- Во всех применимых версиях .NET Framework: WebHeaderCollection экземпляр, возвращаемый свойством Headers , вызовет исключение , ArgumentOutOfRangeException если длина
value
больше 65535. Все остальные WebHeaderCollection экземпляры принимают объект любойvalue
длины. - В версиях .NET Core до версии 3.1: экземпляр, используемый WebHeaderCollection с любым заголовком типа HttpResponseHeader , вызывает исключение , ArgumentOutOfRangeException если длина
value
превышает 65535. Все остальные WebHeaderCollection экземпляры принимают объект любойvalue
длины. - В .NET 5 и более поздних версиях: WebHeaderCollection принимает объект любой
value
длины.
Комментарии
Если заголовок, указанный в заголовке, не существует, Set метод вставляет новый заголовок в список пар имя-значение заголовка.
Если заголовок, указанный в , header
уже присутствует, value
заменяет существующее значение.