Firefox 和 Chrome 中的 IndexedDB 错误:未知错误和 DOMException

IndexedDB errors in Firefox and Chrome: Unknown error and DOMException

我正在尝试在 Chrome 和 firefox 中打开 IndexedDB。我的代码:

var v = 2;
                    var request = indexedDB.open("orders", v);


                  //Firefox code for db init
                  request.onupgradeneeded = function (e) {

                  console.log("onupgradeneeded");
                    var db = e.target.result;
                    // We can only create Object stores in a setVersion transaction;

                    if(db.objectStoreNames.contains("client")) {
                        var storeReq = db.deleteObjectStore("client");
                    }

    const employeeData = [
            { id: "00-01", name: "gopal", age: 35, email: "gopal@tutorialspoint.com" },
            { id: "00-02", name: "prasad", age: 32, email: "prasad@tutorialspoint.com" }
         ];

            var objectStore = db.createObjectStore("client", {keyPath: "id"});

            for (var i in employeeData) {
               objectStore.add(employeeData[i]);
            }

                  }

      request.onsuccess = function(e) {
        var db =  e.target.result;

        console.log("Success");
        console.log(db);


   var transaction = db.transaction(["client"]);
            var objectStore = transaction.objectStore("client");
            var request = objectStore.get("00-02");

            request.onerror = function(event) {
               alert("Unable to retrieve daa from database!");
            };

            request.onsuccess = function(event) {
               // Do something with the request.result!
               if(request.result) {
                  alert("Name: " + request.result.name + ", Age: " + request.result.age + ", Email: " + request.result.email);
               }

               else {
                  alert("Kenny couldn't be found in your database!");
               }
            };


      };

      request.onerror = function(e) {
            console.log(e);
      };

在Chrome中它根本不起作用。我得到一个

DOMException: The user denied permission to access the database.

在 Firefox 中,它的工作原理如上所示。但是,当我将数据库名称更改为 myindexeddb 时,它就不再起作用了。我得到一个 UnknownError.

我不知道我做错了什么。

在 chrome 中,转到 chrome://settings/content 并确保选中顶部单选按钮。还要检查“管理例外”列表以查看该域是否被明确阻止。

就我而言,我遵循了以下步骤:

  1. 在新的 Chrome 选项卡中转到 url chrome://settings/content
  2. 点击Cookies
  3. 取消选中 Block third-party cookies

这应该可以解决错误。