Cache extension type
The Cache interface provides a persistent storage mechanism for
Request / Response object pairs that are cached in long lived memory.
How long a Cache object lives is browser dependent, but a single origin's
scripts can typically rely on the presence of a previously populated Cache
object. Note that the Cache interface is exposed to windowed scopes as
well as workers. You don't have to use it in conjunction with service
workers, even though it is defined in the service worker spec.
An origin can have multiple, named Cache objects. You are responsible for
implementing how your script (e.g. in a ServiceWorker) handles Cache
updates. Items in a Cache do not get updated unless explicitly requested;
they don't expire unless deleted. Use CacheStorage.open to open a specific
named Cache object and then call any of the Cache methods to maintain
the Cache.
You are also responsible for periodically purging cache entries. Each
browser has a hard limit on the amount of cache storage that a given origin
can use. Cache quota usage estimates are available via the
StorageManager.estimate method. The browser does its best to manage disk
space, but it may delete the Cache storage for an origin. The browser will
generally delete all of the data for an origin or none of the data for an
origin. Make sure to version caches by name and use the caches only from the
version of the script that they can safely operate on. See
Deleting old caches
for more information.
Note: The key matching algorithm depends on the VARY header in the value. So matching a new key requires looking at both key and value for entries in the
Cacheobject.
Note: The caching API doesn't honor HTTP caching headers.
API documentation sourced from MDN Web Docs.
- on
- Implemented types
- Available extensions
Properties
- asString → String
-
Available on JSAny, provided by the JSAnyExtension extension
no setter - asString → String?
-
Available on JSAny?, provided by the JSAnyNullableExtension extension
no setter -
entries
→ Iterable<
MapEntry< String, dynamic> > -
Available on JSObject, provided by the JSObjectExtension extension
no setter - hashCode → int
-
The hash code for this object.
no setterinherited
- isDefinedAndNotNull → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
no setter - isElement → bool
-
Available on JSObject?, provided by the JSObjectWebExtension extension
no setter - isHTMLElement → bool
-
Available on JSObject?, provided by the JSObjectWebExtension extension
no setter - isNode → bool
-
Available on JSObject?, provided by the JSObjectWebExtension extension
no setter - isNull → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
Whether this value corresponds to JavaScriptnull.no setter - isTruthy → JSBoolean
-
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result of!!in JavaScript.thisno setter - isUndefined → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
Whether this value corresponds to JavaScriptundefined.no setter - isUndefinedOrNull → bool
-
Available on JSAny?, provided by the NullableUndefineableJSAnyExtension extension
no setter -
keys
→ Iterable<
String> -
Available on JSObject, provided by the JSObjectExtension extension
no setter - not → JSBoolean
-
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result of!in JavaScript.thisno setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
add(
RequestInfo request) → JSPromise< JSAny?> -
The
add()method of the Cache interface takes a URL, retrieves it, and adds the resulting response object to the given cache. -
add(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this+any -
addAll(
JSArray< RequestInfo> requests) → JSPromise<JSAny?> -
The
addAll()method of the Cache interface takes an array of URLs, retrieves them, and adds the resulting response objects to the given cache. The request objects created during retrieval become keys to the stored response operations. -
and(
JSAny? any) → JSAny? -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this&&any -
as<
T extends JSObject> () → T? -
Available on JSObject, provided by the JSObjectExtension extension
-
callMethod<
R extends JSAny?> (JSAny method, [JSAny? arg1, JSAny? arg2, JSAny? arg3, JSAny? arg4]) → R -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Callsmethodon this JSObject with up to four arguments. -
callMethodVarArgs<
R extends JSAny?> (JSAny method, [List< JSAny?> ? arguments]) → R -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Callsmethodon this JSObject with a variable number ofarguments. -
dartify(
) → Object? -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Converts a JavaScript JSON-like value to the Dart equivalent if possible. -
delete(
RequestInfo request, [CacheQueryOptions options]) → JSPromise< JSBoolean> -
The
delete()method of the Cache interface finds the Cache entry whose key is the request, and if found, deletes the Cache entry and returns aPromisethat resolves totrue. If no Cache entry is found, it resolves tofalse. -
delete(
JSAny property) → JSBoolean -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Deletes the property with keypropertyfrom this JSObject. -
divide(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this/any -
equals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this==any -
exponentiate(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this**any -
get(
String key) → Object? -
Available on JSObject, provided by the JSObjectExtension extension
-
getProperty<
R extends JSAny?> (JSAny property) → R -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
The value of the property keypropertyof this JSObject. -
greaterThan(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this>any -
greaterThanOrEqualTo(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this>=any -
has(
String property) → bool -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Shorthand helper for hasProperty to check whether this JSObject contains the property keyproperty, but takes and returns a Dart value. -
hasProperty(
JSAny property) → JSBoolean -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Whether or not this JSObject contains the property keyproperty. -
instanceof(
JSFunction constructor) → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether thisJSAny?is aninstanceofconstructor. -
instanceOfString(
String constructorName) → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether thisJSAny?is aninstanceofthe constructor that is defined byconstructorName, which is looked up in the globalContext. -
isA<
T extends JSAny?> () → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether thisJSAny?is an instance of the JavaScript type that is declared byT. -
keys(
[RequestInfo request, CacheQueryOptions options]) → JSPromise< JSArray< Request> > -
The
keys()method of the Cache interface returns aPromisethat resolves to an array of Request objects representing the keys of the Cache. -
lessThan(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this<any -
lessThanOrEqualTo(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this<=any -
match(
RequestInfo request, [CacheQueryOptions options]) → JSPromise< Response?> -
The
match()method of the Cache interface returns aPromisethat resolves to the Response associated with the first matching request in the Cache object. If no match is found, thePromiseresolves toundefined. -
matchAll(
[RequestInfo request, CacheQueryOptions options]) → JSPromise< JSArray< Response> > -
The
matchAll()method of the Cache interface returns aPromisethat resolves to an array of all matching responses in the Cache object. -
modulo(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this%any -
multiply(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this*any -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notEquals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this!=any -
or(
JSAny? any) → JSAny? -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this||any -
put(
RequestInfo request, Response response) → JSPromise< JSAny?> -
The
put()method of the Cache interface allows key/value pairs to be added to the current Cache object. -
put(
Object key, Object? value) → void -
Available on JSObject, provided by the JSObjectExtension extension
-
setProperty(
JSAny property, JSAny? value) → void -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Write thevalueof property keypropertyof this JSObject. -
strictEquals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this===any -
strictNotEquals(
JSAny? any) → JSBoolean -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this!==any -
subtract(
JSAny? any) → JSAny -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this-any -
toMap(
) → Map< String, dynamic> -
Available on JSObject, provided by the JSObjectExtension extension
-
toString(
) → String -
A string representation of this object.
inherited
-
typeofEquals(
String typeString) → bool -
Available on JSAny?, provided by the JSAnyUtilityExtension extension
Whether the result oftypeofon thisJSAny?istypeString. -
unsignedRightShift(
JSAny? any) → JSNumber -
Available on JSAny?, provided by the JSAnyOperatorExtension extension
The result ofin JavaScript.this>>>any
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
-
operator [](
String property) → JSAny? -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Shorthand helper for getProperty to get the value of the property keypropertyof this JSObject, but takes a Dart value. -
operator []=(
String property, JSAny? value) → void -
Available on JSObject, provided by the JSObjectUnsafeUtilExtension extension
Shorthand helper for setProperty to write thevalueof the property keypropertyof this JSObject, but takes a Dart value.