1

ここで、自分のマシン(FF 13.0.1)で動作するプロトタイプアプリを作成しました。さらにいくつかのテストを行うために、ユーザーが初めてアクセスしたときの動作を確認しようとしました。そこで、仮想マシンを開いて実行しました。問題は、アプリのローカルデータベースの使用に関してブラウザから許可の問い合わせを受け取らないことです。このため、アプリが期待どおりに実行されません。ただし、明示的な許可設定を探していたときに、Firefoxから、アプリにローカルデータベースの使用へのアクセスを許可したいというIDが表示されました。その後、私のアプリは動作しました。

では、FirefoxにアプリのIndexedDBの使用に関する許可をユーザーに要求するにはどうすればよいですか?

ありがとうございました!

4

1 に答える 1

2

Chromeでは、IndexedDBをホストに初めてインストールするときにアクセス許可(オリジン、ポート、プロトコルの一致)を求められますが、これはFirefoxのデフォルトの動作ではないようです。

この役立つMozillaサポートチケットによると、FFには「indexedDB」と「indexedDB-unlimited」の2種類のアクセス許可があるようです。後者のみが機能します。ユーザーは、50MBの上限に達するまで許可を与える必要はありません。

チケットは、デフォルトでIDBを許可し、プロンプトが表示されないという予想される動作を説明しています。

期待される-アプリは読み込みを完了し、プロンプトなしでデフォルトでインデックス付きDBを許可する必要があります

クロスブラウザ方式で一貫してパーミッションを制御したい場合は、仕様がブラウザがこれを実行する方法を提供しておらず、ChromeチームとMozillaチームがすでに同意していないため、自分の手で問題を処理することをお勧めします。

たとえばlocalStore、ユーザーが許可を与える場合は「1」を、拒否する場合は「0」を保存します。「0」のユーザーのデータベースを開くことを拒否し、フラグとして「未定義」のユーザーのアクセス許可を求めるプロンプトを表示します。

于 2012-07-02T20:44:57.547 に答える