Directiva de caché

Una directiva de caché define reglas que se usan para determinar si se puede satisfacer una solicitud mediante una copia almacenada en caché del recurso solicitado. Las aplicaciones especifican requisitos de caché de cliente de actualización, pero la directiva de caché en vigor viene determinada por los requisitos de caché de cliente, los requisitos de expiración del contenido del servidor y los requisitos de revalidación del servidor. La interacción de la directiva de caché de cliente y los requisitos de servidor siempre da como resultado la directiva de caché más conservadora para ayudar a garantizar que el contenido actualizado se devuelva a la aplicación cliente.

Las directivas de caché están basadas en la ubicación o en el tiempo. Una directiva de caché basada en la ubicación define la actualización de las entradas almacenadas en caché en función de dónde se puede obtener el recurso solicitado. Una directiva de caché basada en el tiempo define la actualización de las entradas almacenadas en caché según la hora a la que se ha recuperado el recurso, los encabezados devueltos con este y la hora actual. La mayoría de las aplicaciones puede usar la directiva de caché basada en el tiempo predeterminada, que implementa la directiva de caché que se especifica en RFC 2616, disponible en el sitio web de Internet Engineering Task Force (IETF).

Las clases descritas en la siguiente tabla se usan para especificar directivas de caché.

Nombre de la clase Descripción
HttpRequestCachePolicy Representa directivas de caché basadas en la ubicación y en el tiempo para los recursos solicitados mediante objetos HttpWebRequest.
RequestCachePolicy Representa directivas de caché basadas en la ubicación o la directiva de caché basada en el tiempo Default para los recursos solicitados mediante objetos WebRequest.
HttpCacheAgeControl Especifica valores usados para crear objetos HttpRequestCachePolicy basados en el tiempo.
HttpRequestCacheLevel Especifica valores usados para crear objetos HttpRequestCachePolicy basados en el tiempo y en la ubicación.
RequestCacheLevel Especifica valores usados para crear objetos RequestCachePolicy basados en la ubicación o el objeto basado en el tiempo Default.

Puede definir una directiva de caché para todas las solicitudes realizadas por la aplicación o para solicitudes individuales. Cuando se especifican una directiva de caché de nivel de aplicación y una directiva de caché de nivel de solicitud, se usa la directiva de nivel de solicitud. Puede especificar una directiva de caché de nivel de aplicación mediante programación o mediante archivos de configuración de aplicación o equipo. Para más información, vea Elemento <requestCaching> (configuración de red).

Para crear una directiva de caché, debe crear un objeto de directiva mediante la creación de una instancia de la clase RequestCachePolicy o HttpRequestCachePolicy. Para especificar la directiva en una solicitud, establezca la propiedad CachePolicy de la solicitud en el objeto de directiva. Al establecer una directiva de nivel de aplicación mediante programación, establezca la propiedad DefaultCachePolicy en el objeto de directiva.

Para obtener ejemplos de código que muestran cómo crear y usar directivas de caché, vea Configurar el almacenamiento en caché de las aplicaciones de red.

Vea también