Class Cache

キャッシュ

特定のキャッシュへの参照。

このクラスを使用すると、キャッシュのアイテムを挿入、取得、削除できます。これは次のいずれかです。 これは、高コストなリソースや低速なリソースに頻繁にアクセスする必要がある場合に特に便利です。たとえば example.com の RSS フィードの取得に 20 秒かかるものの、処理速度を上げたいとします。 平均リクエスト 1 件です。

function getRssFeed() {
  var cache = CacheService.getScriptCache();
  var cached = cache.get("rss-feed-contents");
  if (cached != null) {
    return cached;
  }
  var result = UrlFetchApp.fetch("http://example.com/my-slow-rss-feed.xml"); // takes 20 seconds
  var contents = result.getContentText();
  cache.put("rss-feed-contents", contents, 1500); // cache for 25 minutes
  return contents;
}
アイテムがキャッシュにない場合は 20 秒待つ必要がありますが、後続の呼び出しは は、アイテムが 25 分でキャッシュから期限切れになるまで非常に高速になります。

メソッド

メソッド戻り値の型概要
get(key)String指定されたキーのキャッシュされた値を取得します。値が見つからない場合は null を返します。
getAll(keys)Object配列のキャッシュにあるすべての Key-Value ペアを含む JavaScript オブジェクトを返します。 できます。
put(key, value)voidKey-Value ペアをキャッシュに追加します。
put(key, value, expirationInSeconds)voidKey-Value ペアをキャッシュに追加します。有効期限(秒)を指定します。
putAll(values)voidKey-Value ペアのセットをキャッシュに追加します。
putAll(values, expirationInSeconds)voidKey-Value ペアのセットをキャッシュに追加します。有効期限(秒)を指定します。
remove(key)void指定されたキーを使用して、キャッシュからエントリを削除します。
removeAll(keys)voidキャッシュから一連のエントリを削除します。

詳細なドキュメント

get(key)

指定されたキーのキャッシュされた値を取得します。値が見つからない場合は null を返します。

// Gets the value from the cache for the key 'foo'.
var value = cache.get('foo');

パラメータ

名前説明
keyStringキャッシュ内で検索するキー

戻る

String - キャッシュに保存された値。値が見つからない場合は null


getAll(keys)

配列のキャッシュにあるすべての Key-Value ペアを含む JavaScript オブジェクトを返します。 できます。

// Gets a set of values from the cache
var values = cache.getAll(['foo', 'x', 'missing']);
// If there were values in the cache for 'foo' and 'x' but not 'missing', then 'values' would
// be: {'foo': 'somevalue', 'x': 'othervalue'}

パラメータ

名前説明
keysString[]検索するキー

戻る

Object - キャッシュにあるすべてのキーの Key-Value ペアを含む JavaScript オブジェクト

関連情報


put(key, value)

Key-Value ペアをキャッシュに追加します。

鍵の最大長は 250 文字です。保存できるデータの最大量 キーあたりの容量は 100 KB です。この値は、600 秒(10 分)後にキャッシュから期限切れになります。

キャッシュに保存されるアイテムの上限は 1,000 です。1,000 個を超えるアイテムが書き込まれた場合、キャッシュには 有効期限まで残り 900 個のアイテムが 返されることになりますこの上限は変更される可能性があります。

// Puts the value 'bar' into the cache using the key 'foo'
cache.put('foo', 'bar');

パラメータ

名前説明
keyStringそのキーに値を保存する鍵を
valueStringキャッシュに保存する値

put(key, value, expirationInSeconds)

Key-Value ペアをキャッシュに追加します。有効期限(秒)を指定します。

鍵の最大長は 250 文字です。保存できるデータの最大量 キーあたりの容量は 100 KB です。指定された有効期限は提案にすぎません。キャッシュに保存されたデータは 大量のデータがキャッシュに保存されている場合、この時間より前に削除されます。

キャッシュに保存されるアイテムの上限は 1,000 です。1,000 個を超えるアイテムが書き込まれた場合、キャッシュには 有効期限まで残り 900 個のアイテムが 返されることになりますこの上限は変更される可能性があります。

// Puts the value 'bar' into the cache using the key 'foo', but only for the next 20 seconds.
cache.put('foo', 'bar', 20);

パラメータ

名前説明
keyStringそのキーに値を保存する鍵を
valueStringキャッシュに保存する値
expirationInSecondsInteger値がキャッシュに保持される最大時間(秒単位)。「 最小は 1 秒、最大は 21,600 秒(6 時間)です。

putAll(values)

Key-Value ペアのセットをキャッシュに追加します。

「put」の繰り返し呼び出しに似ていますが、 memcache サーバーを使ってすべての値を設定します。鍵の最大長は 250 文字です。最大値 キーごとに格納できるデータ量は 100 KB です。値は次の日付以降にキャッシュから 600 秒(10 分)。

キャッシュに保存されるアイテムの上限は 1,000 です。1,000 個を超えるアイテムが書き込まれた場合、キャッシュには 有効期限まで残り 900 個のアイテムが 返されることになりますこの上限は変更される可能性があります。

// Puts a set of values into the cache with the keys 'foo', 'x', and 'key'.
var values = {
  'foo': 'bar',
  'x':'y',
  'key': 'value'
};
cache.putAll(values);

パラメータ

名前説明
valuesObject文字列キーと値を含む JavaScript オブジェクト

関連情報


putAll(values, expirationInSeconds)

Key-Value ペアのセットをキャッシュに追加します。有効期限(秒)を指定します。

「put」の繰り返し呼び出しに似ていますが、 memcache サーバーを使ってすべての値を設定します。鍵の最大長は 250 文字です。最大値 キーごとに格納できるデータ量は 100 KB です。指定の有効期限は、 提案大量のデータがキャッシュに保存されている場合、この時間より前にキャッシュされたデータが削除される可能性があります。

キャッシュに保存されるアイテムの上限は 1,000 です。1,000 個を超えるアイテムが書き込まれた場合、キャッシュには 有効期限まで残り 900 個のアイテムが 返されることになりますこの上限は変更される可能性があります。

// Puts a set of values into the cache with the keys 'foo', 'x', and 'key'.
var values = {
  'foo': 'bar',
  'x':'y',
  'key': 'value'
};
cache.putAll(values, 20);

パラメータ

名前説明
valuesObject文字列のキーと値を含む JavaScript オブジェクト
expirationInSecondsInteger値がキャッシュに保持される最大時間(秒単位)。 有効な最小有効期限は 1 秒、最大有効期限は 21, 600 秒です。 (6 時間)。デフォルトの有効期限は 600 秒(10 分)です。

関連情報


remove(key)

指定されたキーを使用して、キャッシュからエントリを削除します。

// Removes any cache entries for 'foo'
cache.remove('foo');

パラメータ

名前説明
keyStringキャッシュから削除するキー

removeAll(keys)

キャッシュから一連のエントリを削除します。

// Removes entries from the cache with keys 'foo' and 'x'
cache.removeAll(['foo', 'x']);

パラメータ

名前説明
keysString[]削除するキーの配列