tencent cloud

Tencent Cloud EdgeOne

Cache

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-15 18:20:38
AI翻訳
CacheはWeb APIs標準のCache APIに基づいて設計されています。エッジ関数ランタイムはグローバルにcachesオブジェクトを注入します。このオブジェクトは一連のキャッシュ操作インターフェースを提供します。
説明:
キャッシュされたコンテンツは現在のデータノードでのみ有効であり、他のデータノードに自動的に複製されることはありません。

コンストラクタ

caches.defaultを使用すると、デフォルトのcacheインスタンスを取得できます。
// デフォルトのcacheインスタンスを取得します。
const cache = caches.default;

// 効果はcaches.defaultと同等です。
await caches.open('default');
caches.openを使用して、指定された名前空間のcacheインスタンスを作成します。
// 指定された名前空間のcacheインスタンスを作成します。
const cache = await caches.open(namespace);

パラメータ

caches.open(namespace)メソッドのパラメータ説明は以下の通りです。
パラメータ名
タイプ
必須
説明
namespace
string
はい
キャッシュの名前空間です。
この値が「default」の場合、デフォルトインスタンスを表します。また、caches.defaultを直接使用してデフォルトインスタンスを取得することもできます。

インスタンスメソッド

match

cache.match(request: string | Request, options?: MatchOptions): Promise<Response | undefined>
requestに関連するキャッシュResponseを取得します。Promiseオブジェクトを返します。キャッシュが存在する場合はResponseオブジェクトを含み、存在しない場合はundefinedを含みます。
注意:
cache.matchは内部で能動的にオリジンにアクセスしません。キャッシュが期限切れの場合は504エラーを返します。

パラメータ

パラメータ名
タイプ
必須
説明
request
string | Request
はい
リクエストオブジェクトです。headersの説明は以下のとおりです。
GET
requestはGETメソッドのみをサポートします。型がstringの場合、URLとしてRequestオブジェクトを構築します。
Range
requestにRangeヘッダーが含まれる場合、キャッシュされたResponseがRange範囲処理をサポートできるときは、206レスポンスを返します。
If-Modified-Since
requestにIf-Modified-Sinceヘッダーが含まれる場合、キャッシュされたResponseにLast-Modifiedヘッダーが存在し、かつLast-ModifiedがIf-Modified-Sinceと等しいときは、304レスポンスを返します。
If-None-Match
requestにIf-None-Matchヘッダーが含まれる場合、キャッシュされたResponseにETagヘッダーが存在し、かつETagがIf-None-Matchと等しいときは、304レスポンスを返します。
options
いいえ
オプション。

MatchOptions

属性名
タイプ
サンプル値
説明
ignoreMethod
boolean
true
Requestのmethodを無視するかどうかを設定します。trueの場合、Request元のmethodを無視し、GETとして処理します。

put

cache.put(request: string | Request, response: Response): Promise<undefined>
指定されたrequestをキャッシュキーとして使用し、responseをキャッシュに追加します。キャッシュの成否にかかわらず、Promise<undefined>オブジェクトを返します。
注意:
パラメータresponseオブジェクトのCache-Controlヘッダーがキャッシュしないことを示す場合、413エラーがスローされます。

パラメータ

パラメータ名
タイプ
必須
説明
request
string | Request
はい
キャッシュキーについて、次のように説明します。
GET
パラメータrequestはGETメソッドのみをサポートします。その他のメソッドでは、パラメータエラーが発生します。
string
パラメータrequestの型がstringの場合、URLとしてRequestオブジェクトを構築します。
response
はい
キャッシュ内容について、次のように説明します。
Cache-Control
s-maxage、max-age、no-store、no-cache、privateをサポートします。そのうち、no-store、no-cache、privateはすべてキャッシュしないことを意味し、cache.putは413エラーを返します。
Pragma
Cache-Controlが設定されておらず、かつPragmaがno-cacheの場合、このときはキャッシュしないことを示します。
ETag
cache.matchパラメータのrequestにIf-None-Matchヘッダーが含まれる場合、ETagと関連付けて使用できます。
Last-Modified
cache.matchパラメータのrequestにIf-Modified-Sinceヘッダーが含まれる場合、Last-Modifiedと関連付けて使用できます。
416 Range Not Satisfiable
パラメータresponseオブジェクトが416 Range Not Satisfiableの場合、一時的にキャッシュしません。

パラメータ制限

cache.putで以下のパラメータ値を使用すると、パラメータエラーが発生します:
パラメータrequestがGETメソッド以外のメソッドです。
パラメータresponseのステータスコードが206 Partial Contentです。
パラメータresponseにVary: *ヘッダーが含まれています。

delete

cache.delete(request: string | Request, options?: DeleteOptions): Promise<boolean>
requestに関連するキャッシュresponseを削除します。ネットワークエラーが発生していない場合、常にPromiseを返し、trueを含みます。逆の場合はfalseを含みます。

パラメータ

パラメータ名
タイプ
必須
説明
request
string | Request
はい
キャッシュキーについて、次のように説明します。
GET
パラメータrequestはGETメソッドのみをサポートします。
string
パラメータrequestの型がstringの場合、URLとしてRequestオブジェクトを構築します。
options
いいえ
設定オプション。

DeleteOptions

属性名
タイプ
サンプル値
説明
ignoreMethod
boolean
true
requestのメソッド名を無視するかどうかを設定します。trueの場合、Request元のメソッドを無視し、GETとして処理します。

関連参考

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック