Compartir a través de


IHttpCachePolicy::SetVaryByValue (Método)

Establece el valor de la variable para la directiva de caché.

Sintaxis

virtual HRESULT SetVaryByValue(  
   PCSTR pszValue  
) = 0;  

Parámetros

pszValue
Puntero a una cadena terminada en null que contiene el valor personalizado 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 la operación se realizó correctamente.
E_INVALIDARG Indica que pszValue es NULL.
ERROR_ARITHMETIC_OVERFLOW Indica que la longitud de pszValue supera un límite máximo.

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 establecer el valor de la variable, llame al método IHttpContext::GetResponse , al método IHttpResponse::GetCachePolicy y, por último, al SetVaryByValue método .

SetVaryByValue 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 variables. Durante la construcción de un implementador, este búfer se inicializa en vacío.

  • SetVaryByValue devuelve E_INVALIDARG inmediatamente si el pszValue parámetro es NULL. De lo contrario, el búfer interno se expande, si es necesario, para contener el contenido de y el carácter de pszValue terminación null. A continuación pszValue, , seguido del carácter de terminación null, se copia en este búfer. Cualquier dato del búfer antes de que se sobrescriba la llamada a SetVaryByValue , si es necesario, durante la llamada a SetVaryByValue.

Notas para los implementadores

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

Notas para autores de la llamada

IHttpCachePolicy los clientes son responsables de pasar una cadena terminada en null al SetVaryByValue método . Los clientes también son responsables de eliminar después de pszValue la llamada a SetVaryByValue, porque IHttpCachePolicy los implementadores copian pszValue en un búfer interno.

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)