-
Notifications
You must be signed in to change notification settings - Fork 5.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
61 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
--- | ||
_build: | ||
publishResources: false | ||
render: never | ||
list: never | ||
|
||
name: "Enable `cache: no-store` HTTP standard API" | ||
sort_date: "2024-11-11" | ||
enabled_date: "2024-11-11" | ||
enable_flag: "cache_option_enabled" | ||
disable_flag: "cache_option_disabled" | ||
--- | ||
|
||
When you enable the `cache_option_enabled` compatibility flag, you can specify a value for the `cache` property of the Request interface. | ||
When this compatibility flag is not enabled, or `cache_option_disabled` is set, the Workers runtime will throw an `Error` saying `The 'cache' field on | ||
'RequestInitializerDict' is not implemented.` | ||
|
||
When this flag is enabled you can instruct Cloudflare not to cache the response from a subrequest you make from your Worker using the [`fetch()` API](/workers/runtime-apis/fetch/): | ||
|
||
The only cache option enabled with `cache_option_enabled` is `'no-store'`. | ||
Specifying any other value will cause the Workers runtime to throw a `TypeError` with the message `Unsupported cache mode: <the-mode-you-specified>`. | ||
|
||
When `no-store` is specified: | ||
* All requests have the headers `Pragma: no-cache` and `Cache-Control: no-cache` are set on them. | ||
|
||
* Subrequests to origins not hosted by Cloudflare bypasses Cloudflare's cache. | ||
|
||
Examples using `cache: 'no-store'`: | ||
|
||
```js | ||
const response = await fetch("https://example.com", { cache: 'no-store'}); | ||
``` | ||
|
||
The cache value can also be set on a `Request` object. | ||
|
||
```js | ||
const request = new Request("https://example.com", { cache: 'no-store'}); | ||
const response = await fetch(request); | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters