2012 年 7 月 29 日 日曜日
“cache”というキーでキャッシュを取得。キャッシュが保存されていれば、取得した文字列からHtmlOutputインスタンスを生成し、画面に表示している。
キャッシュがなければHtmlOutputを生成したあと、キャッシュに保存し、次回以降はキャッシュ文字列から生成して画面に表示する。
function doGet()
{
var cache = CacheService.getPublicCache();
var cachedHtml = cache.get('cache');
var html;
if(cachedHtml != null)
{
html = HtmlService.createHtmlOutput(cachedHtml);
}else
{
html = HtmlService.createHtmlOutput('Hello Cache Service!
');
cache.put('cache', html.getContent());
}
return html;
}
行3 | Cacheインスタンスは、CacheService.getPrivateCache() またはCacheService.getPublicCache() で生成することができるが、これらはキャッシュの有効範囲が異なる。
|
---|---|
行4 | cache.get(key) で、保存したキャッシュを取得している。”cache”というキーでキャッシュが保存されていれば、キャッシュに保存されている文字列を取得できる。保存されていなければ戻り値としてnullを返す。 |
行7 〜 行9 |
キャッシュが保存されていれば、HtmlService.createHtmlOutput(string html) でキャッシュに保存されている文字列からHtmlOutputインスタンスを生成する。
|
行10 〜 行14 |
キャッシュが保存されていない場合はHtmlOutputインスタンスを作成し、作成したHTMLを、{HtmlOutputインスタンス}.getContent() で、HtmlOutputを文字列として取得し、”cache”というキーで保存している。
関連:キャッシュを保存するには |
▼ユーザー固有の非公開キャッシュ。例えばカレンダーの予定をキャッシュする場合などに使用する。
CacheService.getPrivateCache()
▼公開キャッシュ。
CacheService.getPublicCache()
▼パラメータkeyで保存されているキャッシュを取得する。なければnullを返す。
{Cacheインスタンス}.get(key)
このエントリーのトラックバックURL:
http://www.bmoo.net/archives/2012/07/314557.html/trackback