Compartilhar via


Método IHttpCachePolicy::AppendVaryByHeader

Acrescenta o valor do cabeçalho à política de cache.

Sintaxe

virtual HRESULT AppendVaryByHeader(  
   PCSTR pszHeader  
) = 0;  

Parâmetros

pszHeader
Um ponteiro para uma cadeia de caracteres terminada em nulo que contém o cabeçalho personalizado a ser acrescentado.

-ou-

NULL.

Valor Retornado

Um HRESULT. Os possíveis valores incluem, mas sem limitação, aqueles na tabela a seguir.

Valor Descrição
S_OK Indica que pszHeader é NULL.

-ou-

Indica que pszHeader é acrescentado à lista de cabeçalhos de variável.
ERROR_NOT_ENOUGH_MEMORY Indica que a memória de heap está esgotada.
E_FAIL Indica que a operação falhou.

Comentários

Classes derivadas de CHttpModule que se registram para eventos de solicitação ou resposta recebem um ponteiro IHttpContext como um parâmetro no método correspondentevirtual. Para acrescentar um cabeçalho personalizado, chame o método IHttpContext::GetResponse , o método IHttpResponse::GetCachePolicy e, por fim, o AppendVaryByHeader método .

AppendVaryByHeader O comportamento depende da implementação. Você deve usar as seguintes informações como uma diretriz, mas elas podem não estar corretas em todos os cenários:

O implementador padrão atual da interface IHttpCachePolicy declara um private buffer que contém dados de cabeçalho variável. Durante a construção de um implementador, esse buffer é inicializado como vazio. Sempre que AppendVaryByHeader for chamado, AppendVaryByHeader retornará imediatamente S_OK se o pszHeader parâmetro for NULL. Caso contrário, o buffer será expandido para manter uma cópia de pszHeader, incluindo o caractere de terminação nula, mais 1 se o buffer não estiver vazio no momento. Em seguida, se o buffer não estiver vazio, o caractere ',' será acrescentado ao buffer. Por fim, o conteúdo de pszHeader, incluindo o caractere de terminação nula, é acrescentado ao buffer.

Notas para implementadores

Os implementadores IHttpCachePolicy são responsáveis por copiar o pszHeader parâmetro em um buffer, pois não há garantia de que os dados associados pszHeader a sejam válidos após a chamada para AppendVaryByHeader.

Observações para chamadores

IHttpCachePolicy os clientes são responsáveis por passar um parâmetro NULL pszHeader ou uma cadeia de caracteres terminada em nulo para o AppendVaryByHeader método . Os clientes também são responsáveis por descartar pszHeader após a chamada para AppendVaryByHeader, porque IHttpCachePolicy os implementadores copiam pszHeader em um buffer interno.

O buffer interno usado pelo implementador padrão IHttpCachePolicy é uma cadeia de caracteres delimitada por vírgulas de cabeçalhos personalizados. Portanto, pszHeader não deve incluir o caractere ''.

Requisitos

Type Descrição
Cliente – IIS 7.0 no Windows Vista
– IIS 7.5 no Windows 7
– IIS 8.0 no Windows 8
– IIS 10.0 no Windows 10
Servidor – IIS 7.0 no Windows Server 2008
– IIS 7.5 no Windows Server 2008 R2
– IIS 8.0 no Windows Server 2012
– IIS 8.5 no Windows Server 2012 R2
– IIS 10.0 no Windows Server 2016
Produto - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
- IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
parâmetro Httpserv.h

Consulte Também

IHttpCachePolicy Interface