Compartir a través de


IHttpCachePolicy::AppendVaryByQueryString (Método)

Anexa el valor de consulta a la directiva de caché.

Sintaxis

virtual HRESULT AppendVaryByQueryString(  
   PCSTR pszParam  
) = 0;  

Parámetros

pszParam
Puntero a una cadena terminada en null que contiene la cadena de consulta personalizada que se va a anexar.

o bien

NULL.

Valor devuelto

Una clase HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.

Valor Descripción
S_OK Indica que pszParam es NULL.

o bien

Indica que pszParam se anexa a la lista de consultas.
ERROR_NOT_ENOUGH_MEMORY Indica que se agota la memoria del montón.
E_FAIL Indica que se produjo un error en la operación.

Comentarios

Las clases derivadas de CHttpModule que se registran para eventos de solicitud o respuesta reciben un puntero IHttpContext como parámetro en el método correspondientevirtual. Para anexar una consulta personalizada, llame al método IHttpContext::GetResponse , al método IHttpResponse::GetCachePolicy y, por último, al AppendVaryByQueryString método .

AppendVaryByQueryString el comportamiento depende de la implementación. Debe usar la siguiente información como guía, pero puede que no sea correcta en todos los escenarios:

El implementador predeterminado actual de la interfaz IHttpCachePolicy declara un private búfer que contiene datos de encabezado de variable. Durante la construcción de un implementador, este búfer se inicializa en vacío. Cada vez AppendVaryByQueryString que se llama, AppendVaryByQueryString devuelve inmediatamente S_OK si el pszParam parámetro es NULL. De lo contrario, el búfer se expande para contener una copia de pszParam, incluido el carácter de terminación NULL, más 1 si el búfer no está vacío actualmente. A continuación, si el búfer no está vacío, el carácter "", se anexa al búfer. Por último, el contenido de pszParam, incluido el carácter de terminación null, se anexa al búfer.

Notas para los implementadores

Los implementadores de IHttpCachePolicy son responsables de copiar el pszParam parámetro en un búfer, ya que no se garantiza que los datos asociados pszParam a sean válidos después de la llamada a AppendVaryByQueryString.

Notas para autores de la llamada

IHttpCachePolicy los clientes son responsables de pasar un parámetro NULL pszParam o una cadena terminada en NULL al AppendVaryByHeader método . Los clientes también son responsables de eliminar después de pszParam la llamada a AppendVaryByHeader, porque IHttpCachePolicy los implementadores copian pszParam en un búfer interno.

El búfer interno utilizado por el implementador predeterminado IHttpCachePolicy es una cadena delimitada por comas de encabezados personalizados. Por lo tanto, pszParam no debe incluir el carácter ',' .

Requisitos

Tipo Descripción
Remoto - IIS 7.0 en Windows Vista
- IIS 7.5 en Windows 7
- IIS 8.0 en Windows 8
- IIS 10.0 en Windows 10
Servidor - IIS 7.0 en Windows Server 2008
- IIS 7.5 en Windows Server 2008 R2
- IIS 8.0 en Windows Server 2012
- IIS 8.5 en Windows Server 2012 R2
- IIS 10.0 en Windows Server 2016
Producto - 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
Encabezado Httpserv.h

Consulte también

IHttpCachePolicy (interfaz)