WebHeaderCollection.IsRestricted Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Проверяет, может ли быть установлен указанный заголовок HTTP.
Перегрузки
IsRestricted(String) |
Проверяет, можно ли задать для запроса указанный заголовок HTTP. |
IsRestricted(String, Boolean) |
Проверяет, можно ли задать для запроса или ответа указанный заголовок HTTP. |
IsRestricted(String)
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
Проверяет, можно ли задать для запроса указанный заголовок HTTP.
public:
static bool IsRestricted(System::String ^ headerName);
public static bool IsRestricted (string headerName);
static member IsRestricted : string -> bool
Public Shared Function IsRestricted (headerName As String) As Boolean
Параметры
- headerName
- String
Проверяемый заголовок.
Возвращаемое значение
Значение true
, если заголовок ограниченный; в противном случае — значение false
.
Исключения
headerName
имеет значение null
или Empty.
Параметр headerName
содержит недопустимые символы.
Примеры
В следующем примере проверяется свойство , IsRestricted чтобы узнать, запрещено ли задавать какие-либо заголовки.
try
{
// Create a web request for S"www.msn.com".
HttpWebRequest^ myHttpWebRequest = dynamic_cast<HttpWebRequest^>(WebRequest::Create( "http://www.msn.com" ));
// Get the associated response for the above request.
HttpWebResponse^ myHttpWebResponse = dynamic_cast<HttpWebResponse^>(myHttpWebRequest->GetResponse());
// Get the headers associated with the response.
WebHeaderCollection^ myWebHeaderCollection = myHttpWebResponse->Headers;
for ( int i = 0; i < myWebHeaderCollection->Count; i++ )
{
// Check if the first response header is restriced.
if ( WebHeaderCollection::IsRestricted( dynamic_cast<String^>(myWebHeaderCollection->AllKeys[ i ]) ) )
Console::WriteLine( "' {0}' is a restricted header", myWebHeaderCollection->AllKeys[ i ] );
else
Console::WriteLine( "' {0}' is not a restricted header", myWebHeaderCollection->AllKeys[ i ] );
}
myHttpWebResponse->Close();
}
catch ( WebException^ e )
{
Console::WriteLine( "\nWebException is thrown.\nMessage 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 associated response for the above request.
HttpWebResponse myHttpWebResponse = (HttpWebResponse) myHttpWebRequest.GetResponse();
// Get the headers associated with the response.
WebHeaderCollection myWebHeaderCollection = myHttpWebResponse.Headers;
for (int i = 0; i < myWebHeaderCollection.Count;i++)
{
// Check if the first response header is restricted.
if(WebHeaderCollection.IsRestricted(myWebHeaderCollection.AllKeys[i]))
Console.WriteLine("'{0}' is a restricted header", myWebHeaderCollection.AllKeys[i]);
else
Console.WriteLine("'{0}' is not a restricted header", myWebHeaderCollection.AllKeys[i]);
}
myHttpWebResponse.Close();
}
catch(WebException e) {
Console.WriteLine("\nWebException is thrown.\nMessage 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 associated response for the above request.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
'Get the headers associated with the response.
Dim myWebHeaderCollection As WebHeaderCollection = myHttpWebResponse.Headers
'Check if the first response header is restricted.
dim i as integer
for i =0 to myWebHeaderCollection.Count-1
If WebHeaderCollection.IsRestricted(myWebHeaderCollection.AllKeys(i)) Then
Console.WriteLine("'{0}' is a restricted header", myWebHeaderCollection.AllKeys(i))
Else
Console.WriteLine("'{0}' is not a restricted header", myWebHeaderCollection.AllKeys(i))
End If
next
myHttpWebResponse.Close()
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
Комментарии
Метод IsRestricted возвращает true
значение , указывающее, что заголовок ограничен и должен быть задан с помощью свойств, а не напрямую, или задан системой. К заголовкам с ограниченным доступом относятся:
Принять
Подключение
Content-Length
Content-Type
Date
Expect
Узел
If-Modified-Since
Диапазон
Referer
Transfer-Encoding
User-Agent
Proxy-Connection
Применяется к
IsRestricted(String, Boolean)
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
- Исходный код:
- WebHeaderCollection.cs
Проверяет, можно ли задать для запроса или ответа указанный заголовок HTTP.
public:
static bool IsRestricted(System::String ^ headerName, bool response);
public static bool IsRestricted (string headerName, bool response);
static member IsRestricted : string * bool -> bool
Public Shared Function IsRestricted (headerName As String, response As Boolean) As Boolean
Параметры
- headerName
- String
Проверяемый заголовок.
- response
- Boolean
true
для проверки ответа; false
, чтобы протестировать запрос.
Возвращаемое значение
Значение true
, если заголовок ограниченный; в противном случае — значение false
.
Исключения
headerName
имеет значение null
или Empty.
Параметр headerName
содержит недопустимые символы.
Примеры
В следующем примере свойство проверяется, IsRestricted запрещено ли задавать заголовки запросов.
try
{
// Create a web request for S"www.msn.com".
HttpWebRequest^ myHttpWebRequest = dynamic_cast<HttpWebRequest^>(WebRequest::Create( "http://www.msn.com" ));
// Get the associated response for the above request.
HttpWebResponse^ myHttpWebResponse = dynamic_cast<HttpWebResponse^>(myHttpWebRequest->GetResponse());
// Get the headers associated with the response.
WebHeaderCollection^ myWebHeaderCollection = myHttpWebResponse->Headers;
for ( int i = 0; i < myWebHeaderCollection->Count; i++ )
{
// Check if the first response header is restriced.
if ( WebHeaderCollection::IsRestricted( dynamic_cast<String^>(myWebHeaderCollection->AllKeys[ i ]) ) )
Console::WriteLine( "' {0}' is a restricted header", myWebHeaderCollection->AllKeys[ i ] );
else
Console::WriteLine( "' {0}' is not a restricted header", myWebHeaderCollection->AllKeys[ i ] );
}
myHttpWebResponse->Close();
}
catch ( WebException^ e )
{
Console::WriteLine( "\nWebException is thrown.\nMessage 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 associated response for the above request.
HttpWebResponse myHttpWebResponse = (HttpWebResponse) myHttpWebRequest.GetResponse();
// Get the headers associated with the response.
WebHeaderCollection myWebHeaderCollection = myHttpWebResponse.Headers;
for (int i = 0; i < myWebHeaderCollection.Count;i++)
{
// Check if the first response header is restricted.
if(WebHeaderCollection.IsRestricted(myWebHeaderCollection.AllKeys[i]))
Console.WriteLine("'{0}' is a restricted header", myWebHeaderCollection.AllKeys[i]);
else
Console.WriteLine("'{0}' is not a restricted header", myWebHeaderCollection.AllKeys[i]);
}
myHttpWebResponse.Close();
}
catch(WebException e) {
Console.WriteLine("\nWebException is thrown.\nMessage 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 associated response for the above request.
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
'Get the headers associated with the response.
Dim myWebHeaderCollection As WebHeaderCollection = myHttpWebResponse.Headers
'Check if the first response header is restricted.
dim i as integer
for i =0 to myWebHeaderCollection.Count-1
If WebHeaderCollection.IsRestricted(myWebHeaderCollection.AllKeys(i)) Then
Console.WriteLine("'{0}' is a restricted header", myWebHeaderCollection.AllKeys(i))
Else
Console.WriteLine("'{0}' is not a restricted header", myWebHeaderCollection.AllKeys(i))
End If
next
myHttpWebResponse.Close()
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
Комментарии
Метод IsRestricted возвращает значение true
, указывающее, что заголовок запроса или ответа ограничен и должен быть задан с помощью свойств, а не напрямую или задан системой. К заголовкам с ограниченным доступом относятся:
Принять
Подключение
Content-Length
Content-Type
Date
Expect
Узел
If-Modified-Since
Диапазон
Referer
Transfer-Encoding
User-Agent
Proxy-Connection