QLOOKアクセス解析

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Firefox コード例:キャッシュをクリアする

FirefoxアドオンからFirefoxのキャッシュをクリアするJavascript例を挙げる。

■キャッシュをまるっと消す
FF3のメニューバーで「ツール→オプション→詳細→ネットワーク→オフラインデータ」とたどり、「今すぐ消去」ボタンを押下するのとほぼ同じようなキャッシュをまるっと消す処理を拡張機能から実行できる。

/********************************************
キャッシュを全部消す
*/
//キャッシュサービスの生成
var caches = Components.classes["@mozilla.org/network/cache-service;1"].getService(Components.interfaces.nsICacheService);
//キャッシュのクリア
caches.evictEntries(Components.interfaces.nsICache.STORE_ANYWHERE);
//↑他にも個別にストレージを指定できる
//STORE_IN_MEMORY, STORE_ON_DISK, STORE_ON_DISK_AS_FILE, STORE_OFFLINE


■キャッシュを個別に消す
特定のキャッシュを指定して消すこともできる。

/********************************************
URLを指定して特定のキャッシュを消去
*/
//消したいキャッシュのURL
var uri = "http://blog-imgs-19.fc2.com/k/f/a/kfall/favicon.ico";
//キャッシュサービスの生成
var caches = Components.classes["@mozilla.org/network/cache-service;1"].getService(Components.interfaces.nsICacheService);
//キャッシュセッション(nsICacheSession)の生成
//第一引数 = "HTTP" ←ミソ。メモリ上の画像は"image"
var cs = this.caches.createSession("HTTP", Components.interfaces.nsICache.STORE_ANYWHERE, true);
cs.doomEntriesIfExpired = false;
//キャッシュエントリ(nsICacheEntryDescriptor)を取得する
//第一引数 = 消したいキャッシュのURL
var dsc = cs.openCacheEntry(uri, Components.interfaces.nsICache.ACCESS_READ_WRITE, true);
if (dsc) {
dsc.doom();
dsc.close();
cs = null;
}


■キャッシュの確認方法
Firefoxのロケーションバーに「about:cache」と入力し、リターンキーを押下すると、キャッシュ情報が参照できる。

Firefoxのキャッシュ操作の参考文献は少ないが、手がかりとしては以下のページがある。
cf. XULPlanet: XPCOM Reference: Cache
スポンサーサイト

最近の記事

コメント

管理者にだけメッセージを送る

みんなの拡張機能
シリーズ記事一覧
カテゴリ一覧
ブログ内検索
QRコード
QR
プロフィール

くふぉーる

はじめまして。日本のシステムエンジニア「くふぉーる」です。
このブログではできるだけ役立つ記事を掲載することを心がけています。

RSSフィード
このブログについて
・ このブログは全記事リンクフリーです。
・ スパム対策として、トラックバック、コメントは承認制にしてあります。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。