0
我正在使用pouchDB,並試圖從跨域iframe中訪問本地存儲(同一來源) 這在Chrome中工作正常,但在Firefox中沒有。在firefox中使用iframe內的PouchDB訪問本地存儲
澄清:我在「foobar.com」,我加載了一個包含我的html的源代碼爲「test.com」的iframe,並且此html試圖訪問自己的本地存儲,即具有相同來源「test.com 」。
只是爲了展示一個例子,我從我的服務器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>test page</title>
</head>
<script type="text/javascript" src="pouchdb-5.1.0.min.js"></script>
<body>
<button id="create">create db</button>
<button id="read">read records</button>
</body>
<script>
document.getElementById('create').addEventListener('click', createDB, false);
document.getElementById('read').addEventListener('click', readDB, false);
function createDB(){
db = new PouchDB('noobDB');
console.log(db.adapter);
}
function readDB(){
db = new PouchDB('noobDB');
db.allDocs({include_docs : true})
.then(function(result){console.log(result)})
.catch(function(err){console.log(err)});
}
</script>
在Firefox中擔任這個HTML;當我在主瀏覽器窗口加載這個html並創建和檢索記錄時,每件事情都很好,但是當我在iframe中加載這個html頁面並嘗試讀取記錄時,它不起作用。
但在Chrome中,當我在iframe中加載此HTML並讀取記錄時,它工作正常。
什麼在Firefox
您使用的是webSQL還是IndexDB?適配器表示,webSQL將只適用於Chrome和safari:http://pouchdb.com/adapters.html –
是的,我使用的是indexedDB,因爲websql在Firefox中不可用於pouchDB – MShoaib91