Partager via


Classe HttpCachePolicySettings

Représente la stratégie de cache HTTP par défaut pour les ressources réseau.

Syntaxe

class HttpCachePolicySettings : EmbeddedObject  

Méthodes

Cette classe ne contient pas de méthodes.

Propriétés

Le tableau suivant répertorie les propriétés exposées par la classe HttpCachePolicySettings.

Nom Description
MaximumAge Valeur datetime en lecture/écriture qui spécifie l'âge maximal autorisé pour une ressource retournée par le cache. La valeur par défaut est infinie.

Si la copie en cache de la ressource est antérieure à la valeur de temps spécifiée, la ressource doit être revalidée en comparant la ressource en cache à la ressource sur le serveur.
MaximumStale Valeur datetime en lecture/écriture qui spécifie la durée pendant laquelle la copie en cache de la ressource peut être utilisée après l'expiration du contenu. La valeur par défaut est 0.
MinimumFresh Valeur datetime en lecture/écriture qui spécifie la durée pendant laquelle la copie en cache de la ressource peut être utilisée avant l'expiration du contenu. La valeur par défaut est 0.
PolicyLevel Valeur sint32 en lecture/écriture qui spécifie le comportement de mise en cache HTTP pour l'ordinateur local. Les valeurs possibles sont répertoriées plus loin dans la section Remarques.

Sous-classes

Cette classe ne contient aucune sous-classe.

Notes

Les instances de cette classe sont contenues dans la DefaultHttpCachePolicy propriété de la classe RequestCachingSection.

Le tableau suivant répertorie les valeurs possibles pour la propriété PolicyLevel. La valeur par défaut est 0 (Default).

Valeur Mot clé Description
0 Default Satisfait une requête d'une ressource à l'aide de la copie mise en cache de la ressource ou en envoyant une requête de la ressource au serveur. L'action effectuée est déterminée par la stratégie de cache actuelle et l'âge du contenu dans le cache. Il s'agit du niveau de cache que la plupart des applications doivent utiliser.
1 BypassCache Satisfait une requête à l'aide du serveur. Aucune entrée n'est extraite des caches, ajoutées aux caches ou supprimées des caches entre le client et le serveur. Il s'agit du comportement de cache par défaut spécifié dans le fichier de configuration de l'ordinateur inclus dans le .NET Framework.
2 CacheOnly Satisfait une requête à l'aide de la ressource mise en cache localement ; n'envoie pas de requête d'élément qui n'est pas dans le cache. Lorsque ce niveau de stratégie de cache est spécifié, une exception WebException est levée si l'élément ne se trouve pas dans le cache client.
3 CacheIfAvailable Satisfait une requête d'une ressource à partir du cache si la ressource est disponible dans le cache ; sinon, envoie une requête de ressource au serveur. Si l'élément demandé n'est pas disponible dans le cache local, mais qu'il l'est dans un cache intermédiaire entre le client et le serveur, le cache intermédiaire répond à la requête.
4 Revalidate Satisfait une requête en utilisant la copie mise en cache de la ressource si l'horodatage est le même que celui de la ressource sur le serveur. Sinon la ressource est téléchargée à partir du serveur, présentée à l'appelant et enregistrée dans le cache.
5 Reload Satisfait une requête à l'aide du serveur. La réponse peut être enregistrée dans le cache, en fonction des paramètres de la no-cache directive de contrôle du cache et de l'en-tête Pragma: no-cache dans le protocole de mise en cache HTTP.
6 NoCacheNoStore Ne répond jamais à une requête à l'aide de ressources du cache et ne met pas en cache les ressources. Si la ressource est présente dans le cache local, elle en est supprimée. Ce niveau de stratégie indique aux caches intermédiaires qu'ils doivent supprimer la ressource. Dans le protocole de mise en cache HTTP, vous pouvez accomplir cette tâche à l'aide de la no-cache directive de contrôle de cache.
7 CacheOrNextCacheOnly Satisfait une requête de ressource à partir du cache de l'ordinateur local ou d'un cache distant sur le réseau local. Si la requête ne peut pas être satisfaite, une exception WebException est levée. Dans le protocole de mise en cache HTTP, vous pouvez accomplir cette tâche à l'aide de la directive only-if-cached de contrôle de cache.
8 Refresh Satisfait une requête à l'aide du serveur ou d'un cache autre que le cache local. Avant qu'un cache intermédiaire puisse satisfaire la requête, ce cache doit revalider son entrée mise en cache avec le serveur. Dans le protocole de mise en cache HTTP, cela est possible à l'aide de la directive max-age = 0 de contrôle de cache et de l'en-tête Pragma:``no-cache.

Exemple

L'exemple de code suivant spécifie la politique de mise en cache http et définit des valeurs pour les propriétés MinimumFresh, MaximumStale, et MaximumAge.

' Connect to the WMI WebAdministration namespace.  
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")  
  
' Get the RequestCachingSection.  
Set oSection = oWebAdmin.Get("RequestCachingSection.Path=" & _  
    "'MACHINE/WEBROOT/APPHOST',Location=''")  
  
' Display the class name of the section.  
WScript.Echo "[ " & oSection.Path_.Class & " ]"  
  
' Display the initial values for the DefaultHttpCachePolicy property.  
Call DisplayValues("Initial Values", oSection.DefaultHttpCachePolicy)  
  
' Set the http cache policy to use the default.  
oSection.DefaultHttpCachePolicy.PolicyLevel = 0  
  
' Set the MinimumFresh property to 30 minutes.  
oSection.DefaultHttpCachePolicy.MinimumFresh = "00000000003000.000000:000"  
  
' Set the MaximumStale property to 10 minutes.  
oSection.DefaultHttpCachePolicy.MaximumStale = "00000000001000.000000:000"  
  
' Set the MaximumAge property to 1 hour.  
oSection.DefaultHttpCachePolicy.MaximumAge =   "00000000010000.000000:000"  
  
' Save the values to configuration.  
oSection.Put_  
  
' Refresh the oSection object variable with the new values.  
oSection.Refresh_  
  
' Show the changed values.  
Call DisplayValues("New Values", oSection.DefaultHttpCachePolicy)  
  
' ==== DisplayValues helper function. ====  
Function DisplayValues(HeadingText, oObject)  
    WScript.Echo  
    WScript.Echo String(Len(HeadingText), "=")  
    WScript.Echo HeadingText  
    WScript.Echo String(Len(HeadingText), "=")  
  
    For Each Prop In oObject.Properties_  
        WScript.Echo Prop.Name & ": " & Prop.Value  
    Next  
End Function  
  

Hiérarchie d'héritage

EmbeddedObject

HttpCachePolicySettings

Spécifications

Type Description
Client - IIS 7.0 sous Windows Vista
- IIS 7.5 sur Windows 7
- IIS 8.0 sous Windows 8
- IIS 10.0 sur Windows 10
Serveur - IIS 7.0 sous Windows Server 2008
- IIS 7.5 sous Windows Server 2008 R2
- IIS 8.0 sur Windows Server 2012
- IIS 8.5 sur Windows Server 2012 R2
- IIS 10.0 sur Windows Server 2016
Produit - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
Fichier MOF WebAdministration.mof

Voir aussi

Classe EmbeddedObject
Classe FtpCachePolicySettings
Classe RequestCachingSection
CIM_DATETIME