Udostępnij za pośrednictwem


HttpRequestCacheLevel Wyliczenie

Definicja

Określa zachowanie buforowania dla zasobów uzyskanych przy użyciu protokołu HTTP (Hypertext Transfer Protocol).

public enum class HttpRequestCacheLevel
public enum HttpRequestCacheLevel
type HttpRequestCacheLevel = 
Public Enum HttpRequestCacheLevel
Dziedziczenie
HttpRequestCacheLevel

Pola

BypassCache 1

Spełnia żądanie przy użyciu serwera. Żadne wpisy nie są pobierane z pamięci podręcznych, dodawane do pamięci podręcznych ani usuwane z pamięci podręcznych między klientem a serwerem. Żadne wpisy nie są pobierane z pamięci podręcznych, dodawane do pamięci podręcznych ani usuwane z pamięci podręcznych między klientem a serwerem. Jest to domyślne zachowanie pamięci podręcznej określone w pliku konfiguracji maszyny, który jest dostarczany z .NET Framework.

CacheIfAvailable 3

Spełnia żądanie zasobu z pamięci podręcznej, jeśli zasób jest dostępny; w przeciwnym razie wysyła żądanie zasobu do serwera. Jeśli żądany element jest dostępny w dowolnej pamięci podręcznej między klientem a serwerem, żądanie może być spełnione przez pośrednią pamięć podręczną.

CacheOnly 2

Spełnia żądanie przy użyciu zasobu lokalnie buforowanego; nie wysyła żądania dla elementu, który nie znajduje się w pamięci podręcznej. Po określeniu tego poziomu zasad pamięci podręcznej zgłaszany jest wyjątek, WebException jeśli element nie znajduje się w pamięci podręcznej klienta.

CacheOrNextCacheOnly 7

Spełnia żądanie zasobu z pamięci podręcznej komputera lokalnego lub zdalnej pamięci podręcznej w sieci lokalnej. Jeśli żądanie nie może być spełnione, WebException zgłaszany jest wyjątek. W protokole buforowania HTTP jest to realizowane przy użyciu only-if-cached dyrektywy kontroli pamięci podręcznej.

Default 0

Spełnia żądanie zasobu przy użyciu buforowanej kopii zasobu lub wysyłając żądanie dla zasobu na serwer. Podjęta akcja jest określana przez bieżące zasady pamięci podręcznej i wiek zawartości w pamięci podręcznej. Jest to poziom pamięci podręcznej, który powinien być używany przez większość aplikacji.

NoCacheNoStore 6

Nigdy nie spełnia żądania przy użyciu zasobów z pamięci podręcznej i nie buforuje zasobów. Jeśli zasób znajduje się w lokalnej pamięci podręcznej, zostanie usunięty. Ten poziom zasad wskazuje na pośrednie pamięci podręczne, które powinny usunąć zasób. W protokole buforowania HTTP jest to osiągane przy użyciu dyrektywy kontroli pamięci podręcznej no-cache.

Refresh 8

Spełnia żądanie przy użyciu serwera lub pamięci podręcznej innej niż lokalna pamięć podręczna. Aby żądanie było spełnione przez pośrednią pamięć podręczną, pamięć podręczna musi ponownie odnowić jego wpis w pamięci podręcznej z serwerem. W protokole buforowania HTTP jest to osiągane przy użyciu dyrektywy max-age = 0 kontrolki pamięci podręcznej i nagłówka no-cache Pragma .

Reload 5

Spełnia żądanie przy użyciu serwera. Odpowiedź może zostać zapisana w pamięci podręcznej. W protokole buforowania HTTP jest to osiągane przy użyciu dyrektywy kontroli pamięci podręcznej no-cache i nagłówka no-cache Pragma .

Revalidate 4

Porównuje kopię zasobu w pamięci podręcznej z kopią na serwerze. Jeśli kopia na serwerze jest nowsza, jest używana do spełnienia żądania i zastępuje kopię w pamięci podręcznej. Jeśli kopia w pamięci podręcznej jest taka sama jak kopia serwera, używana jest buforowana kopia. W protokole buforowania HTTP jest to realizowane przy użyciu żądania warunkowego.

Przykłady

Poniższy przykład kodu ustawia zasady buforowania domeny aplikacji na Wartość domyślna.

// The following method demonstrates overriding the
// caching policy for a request.
static WebResponse^ GetResponseNoCache( Uri^ uri )
{
   // Set a default policy level for the "http:" and "https" schemes.
   HttpRequestCachePolicy^ policy = gcnew HttpRequestCachePolicy( HttpRequestCacheLevel::Default );
   HttpWebRequest::DefaultCachePolicy = policy;

   // Create the request.
   WebRequest^ request = WebRequest::Create( uri );

   // Define a cache policy for this request only. 
   HttpRequestCachePolicy^ noCachePolicy = gcnew HttpRequestCachePolicy( HttpRequestCacheLevel::NoCacheNoStore );
   request->CachePolicy = noCachePolicy;
   WebResponse^ response = request->GetResponse();
   Console::WriteLine( L"IsFromCache? {0}", response->IsFromCache );
   
   return response;
}
// The following method demonstrates overriding the
// caching policy for a request.
public static WebResponse GetResponseNoCache(Uri uri)
{
    // Set a default policy level for the "http:" and "https" schemes.
    HttpRequestCachePolicy policy = new HttpRequestCachePolicy(HttpRequestCacheLevel.Default);
    HttpWebRequest.DefaultCachePolicy = policy;
    // Create the request.
    WebRequest request = WebRequest.Create(uri);
    // Define a cache policy for this request only.
    HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);
    request.CachePolicy = noCachePolicy;
    WebResponse response = request.GetResponse();
    Console.WriteLine("IsFromCache? {0}", response.IsFromCache);
    return response;
}

Uwagi

Ta wyliczenie służy do ustawiania poziomu pamięci podręcznej określonej przez HttpRequestCachePolicy obiekty.

Ta BypassCache wartość jest domyślnym zachowaniem pamięci podręcznej określonym w pliku konfiguracji maszyny dostarczanym z .NET Framework. Żadne wpisy nie są pobierane z pamięci podręcznych, dodawane do pamięci podręcznych ani usuwane z pamięci podręcznych między klientem a serwerem.

Właściwość służy do pobierania HttpWebRequest.DefaultCachePolicy lub ustawiania domyślnych zasad pamięci podręcznej dla HttpWebRequest wystąpień. Właściwość WebRequest.DefaultCachePolicy służy do pobierania lub ustawiania domyślnych zasad pamięci podręcznej WebRequest dla wystąpienia. Właściwość CachePolicy służy do pobierania lub ustawiania zasad pamięci podręcznej dla określonego żądania.

Kopia zasobu jest dodawana tylko do pamięci podręcznej, jeśli strumień odpowiedzi zasobu zostanie pobrany i odczytany na końcu strumienia. Dlatego inne żądanie dla tego samego zasobu może używać kopii w pamięci podręcznej, w zależności od domyślnego poziomu zasad pamięci podręcznej dla tego żądania.

Dotyczy

Zobacz też