Я сохранил данные в indexeddb, и я пытаюсь получить доступ к этим данным в обслуживающем работнике. Но запрос на открытие indexeddb не выполняется, он ожидает ответа. Следовательно, я не могу получить доступ к данным. Нужна помощь в сортировке проблемы. Ниже приведен мой код для доступа к данным от рабочего.Не удалось получить доступ к indexeddb от обслуживающего персонала
var idbSupported = false;
var db;
self.addEventListener('push', function(){
if("indexedDB" in self) {
idbSupported = true;
}else{ console.log('Indexed db not supported');}
if(idbSupported) {
var openRequest = indexedDB.open("test",1);
openRequest.onupgradeneeded = function(e) {
console.log("Upgrading...");
var thisDB = e.target.result;
if(!thisDB.objectStoreNames.contains("users")) {
thisDB.createObjectStore("users", { autoIncrement: true });
}
}
openRequest.onsuccess = function(e) {
console.log("Success!");
db = e.target.result;
readUser();
}
openRequest.onerror = function(e) {
console.log("Error");
console.dir(e);
}
}
},false);
function readUser(){
var transaction = db.transaction(["users"], "readwrite");
var store = transaction.objectStore("users");
var request = store.get(user_id);
request.onerror = function() {
console.log("Error");
}
request.onsuccess = function() {
console.log("Yolo! Did it");
}
}