Método IHttpCachePolicy::AppendVaryByQueryString
Acrescenta o valor da consulta à política de cache.
Sintaxe
virtual HRESULT AppendVaryByQueryString(
PCSTR pszParam
) = 0;
Parâmetros
pszParam
Um ponteiro para uma cadeia de caracteres terminada em nulo que contém a cadeia de caracteres de consulta personalizada a ser acrescentada.
-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 pszParam é NULL.-ou- Indica que pszParam é acrescentado à lista de consultas. |
ERROR_NOT_ENOUGH_MEMORY | Indica que a memória do 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 uma consulta personalizada, chame o método IHttpContext::GetResponse , o método IHttpResponse::GetCachePolicy e, por fim, o AppendVaryByQueryString
método .
AppendVaryByQueryString
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 AppendVaryByQueryString
for chamado, AppendVaryByQueryString
retornará imediatamente S_OK se o pszParam
parâmetro for NULL. Caso contrário, o buffer será expandido para manter uma cópia de pszParam
, 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 pszParam
, incluindo o caractere de terminação nula, é acrescentado ao buffer.
Notas para implementadores
Os implementadores IHttpCachePolicy são responsáveis por copiar o pszParam
parâmetro em um buffer, pois os dados associados pszParam
a não têm a garantia de serem válidos após a chamada para AppendVaryByQueryString
.
Observações para chamadores
IHttpCachePolicy
os clientes são responsáveis por passar um parâmetro NULL pszParam
ou uma cadeia de caracteres terminada em nulo para o AppendVaryByHeader
método . Os clientes também são responsáveis por descartar pszParam
após a chamada para AppendVaryByHeader
, porque IHttpCachePolicy
os implementadores copiam pszParam
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, pszParam
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 |