Подтвердить что ты не робот

Как сохранить информацию локально в моем хромовом расширении?

Я хочу, чтобы мое расширение chrome сохраняло некоторую информацию, и я не уверен, как запустить код... Мне нужно, чтобы сохранить строки. Например - пользователь вводит строку (в текстовой области над всплывающим окном), и эта строка отображается во всплывающем окне. Когда пользователь выйдет из него и вернется, я хочу, чтобы строка осталась прежней. (Я верю, что он должен его сохранить) Я не хочу сохранять его на своем сервере или что-то в этом роде, я хочу, чтобы он был сохранен в кеше пользователей или что-то в этом роде.

4b9b3361

Ответ 1

Теперь вы можете использовать API Google Chrome storage, чтобы это сделать. В отличие от localStorage, это также доступно из сценариев контента.

//  Somewhere in your manifest...

{
    "permissions": [
        "storage"
    ]
}

//  Usage:

//  PERSISTENT Storage - Globally
//  Save data to storage across their browsers...

chrome.storage.sync.set({ "yourBody": "myBody" }, function(){
    //  A data saved callback omg so fancy
});

chrome.storage.sync.get(/* String or Array */["yourBody"], function(items){
    //  items = [ { "yourBody": "myBody" } ]
});

//  LOCAL Storage

// Save data to storage locally, in just this browser...

chrome.storage.local.set({ "phasersTo": "awesome" }, function(){
    //  Data been saved boys and girls, go on home
});

chrome.storage.local.get(/* String or Array */["phasersTo"], function(items){
    //  items = [ { "phasersTo": "awesome" } ]
});

Подробнее о том, как работают эти махинации: https://developer.chrome.com/extensions/storage#type-StorageArea

Бывший ответ:

Используйте localStorage. Google Chrome реализует некоторые функции HTML5, и это один из них.

//Pull text from user inputbox
var data = document.getElementById("this_input").value;
//Save it to the localStorage variable which will always remember what you store in it
localStorage["inputText"] = data; 

Обратите внимание: вы можете получить доступ только к своему хранилищу со фоновой страницы (без скриптов контента), поэтому вам придется использовать для этого обмен сообщениями.

Ответ 2

Теперь существует конкретный API, проверьте это здесь: https://developer.chrome.com/extensions/storage

Обратите внимание, что он доступен только на вашей фоновой странице и работает в изолированном мире (вы не получаете доступ к значениям, содержащимся в локальном хранилище HTML5 на веб-сайте).