Compartilhar via


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

Consulte Também

IHttpCachePolicy Interface