2017-11-06 24 views
0

私はサファリ11でローカルデータベースのAPIを使用しようとしているが、取得しています:JavaScriptのエラー:「不明なエラー操作は安全ではありません..」

Unknown error The operation is insecure...

は、これはもはや私のために働くために使用ではなく、 。

testDB = {}; 
 

 
function initDatabase() { 
 
    try { 
 
    if (!window.openDatabase) { 
 
     alert("Databases are not supported in this browser."); 
 
    } else { 
 
     var shortName = 'testDB'; 
 
     var version = '1.0'; 
 
     var displayName = 'Test Database'; 
 
     var maxSize = 100000; // bytes 
 
     console.log('openDatabase'); 
 
     testDB = openDatabase(shortName, version, displayName, maxSize); 
 
    } 
 
    } catch (e) { 
 
    if (e == 2) { 
 
     // Version number mismatch. 
 
     console.log("Invalid database version."); 
 
    } else { 
 
     console.log("Unknown error " + e.message + "."); 
 
    } 
 
    return; 
 
    } 
 
} 
 

 
initDatabase();

私はFirefoxでこれを試してみましたが、サポートされているデータベースのAPIが長くないようです:次のように

コードがあります(?)。

どのように進めるべきですか?

+0

このコードは、** fiddle/snippetやこれらのリソースへのアクセスを禁止しているサンドボックス環境**で実行していますか? – gurvinder372

+0

いいえこれはローカルディスク上のファイルの内容です。 Safariでファイルを開くとエラーが表示されます。私は "Content-Security-Policy"メタタグの使用についてネット上のコメントを見たことがあるが、私はその作業をすることができなかった。 – mrob

答えて

0

WebSqlが推奨されていません詳細については、このリンクをチェックし、thatsの。 indexeddbに移動する必要があります。既存のSQLクエリをindexeddbで使用し、indexeddbの複雑さに対処したくない場合は、JsStoreを使用する必要があります。これは、indexeddbにデータを格納するためのapiのようなSQLを提供します。

関連する問題