indexed-db
The indexed-db
module exposes the
IndexedDB API
to add-ons.
Scripts running in web pages can access IndexedDB via the window
object.
For example:
window.indexedDB = window.indexedDB || window.webkitIndexedDB || window.mozIndexedDB || window.msIndexedDB;
var request = window.indexedDB.open("MyDatabase");
request.onerror = function(event) {
console.log("failure");
};
request.onsuccess = function(event) {
console.log("success");
};
Because your main add-on code can't access the DOM, you can't do this.
So you can use the indexed-db
module to access the same API:
var { indexedDB } = require('indexed-db');
var request = indexedDB.open('MyDatabase');
request.onerror = function(event) {
console.log("failure");
};
request.onsuccess = function(event) {
console.log("success");
};
This module also exports all the other objects that implement the IndexedDB API, listed below under API Reference.
The API exposed by indexed-db
is almost identical to the DOM IndexedDB API,
so we haven't repeated its documentation here, but refer you to the
IndexedDB API documentation
for all the details.
The database created will be unique and private per addon, and is not linked to any website database. The module cannot be used to interact with a given website database. See bug 778197 and bug 786688.
Example of Usage
API Reference
Properties
indexedDB : object
Enables you to create, open, and delete databases. See the IDBFactory documentation.
IDBKeyRange : object
Defines a range of keys. See the IDBKeyRange documentation.
IDBCursor : object
For traversing or iterating records in a database. See the IDBCursor documentation.
IDBTransaction : object
Represents a database transaction. See the IDBTransaction documentation.
IDBOpenDBRequest : object
Represents an asynchronous request to open a database. See the IDBOpenDBRequest documentation.
IDBVersionChangeEvent : object
Event indicating that the database version has changed. See the IDBVersionChangeEvent documentation.
IDBDatabase : object
Represents a connection to a database. See the IDBDatabase documentation.
IDBFactory : object
Enables you to create, open, and delete databases. See the IDBFactory documentation.
IDBIndex : object
Provides access to a database index. See the IDBIndex documentation.
IDBObjectStore : object
Represents an object store in a database. See the IDBObjectStore documentation.
IDBRequest : object
Provides access to the results of asynchronous requests to databases and database objects. See the IDBRequest documentation.
DOMException : object
Provides more detailed information about an exception. See the DOMException documentation.