2

sessionStorage と同じ方法で indexedDB に一時データを保存する方法はありますか? 同じドメインの他のセッション (タブ) では利用できず、セッションが閉じられると期限切れになります (storeObject の一部のアイテムまたは storeObject 全体に影響します)。

ランダムな名前で storeObject を作成し、unload イベント リスナーを追加して、ユーザーがページを終了するときにこの storeObject を削除できます。ただし、ここでの問題は、ユーザーが同じドメインのページから別のページに変更したり、ページを更新したりしただけでも、storeObject が削除されることです... (同じセッション)。

document.cookie API に基づく sessionStorage のようなストレージの実装がいくつかあることは知っていますが、これは私の場合には完璧なソリューションではありません。

4

1 に答える 1

2

あなたがやりたいことをする方法があるかどうかはわかりません。indexDB は削除されるまで持続すると思います。タイムスタンプに基づいて削除できます。これは、ユーザーが戻った後、またはログオフ ボタンでのみ発生します。

これは、多くのデータを保存しない場合に localStorage を使用できるようにするのに役立ちます: http://www.sitepoint.com/an-overview-of-the-web-storage-api/

同時データのオーバーライドが心配な場合は、ロックを実装できます: http://balpha.de/2012/03/javascript-concurrency-and-locking-the-html5-localstorage/#comments

于 2014-01-19T22:21:06.963 に答える