4

Google Chrome 拡張機能を開発しています。ユーザーの状態を維持したい。ユーザーがログインした場合、ページの更新後にログインする必要があります。このタイプの状態を維持するにはどうすればよいですか。

4

3 に答える 3

4

バックグラウンド ページは、ブラウザーのセッションまで値を保存します。安定したストレージを探している場合は、Chrome.storage を使用します。次のコードを参考にしてください。

デモンストレーション

マニフェスト.json

Chrome 拡張機能を使用して登録された背景ページ

{
    "name": "Persist Value",
    "description": "http://stackoverflow.com/questions/14744916/how-to-store-variable-in-background-page",
    "manifest_version": 2,
    "version": "1",
    "permissions": [
        "storage"
    ],
    "background": {
        "scripts": [
            "background.js"
        ]
    }
}

background.js

いくつかの些細な実装。

//You can use Storage API
chrome.storage.local.set({
    "Name": "Your_variable",
    "Value": "Some Value"
}, function () {
    console.log("Storage Succesful");
});

参考文献

于 2013-02-07T06:34:51.007 に答える
0

次のメソッドを使用して変数を保存できますlocalStorage: localStorage.setItem()localStorage.getItem()、しかし localStorage には制限があります

ビッグデータを利用した場合chrome.storage.local、またはchrome.storage.sync

localStorage は高速で動作し、chrome.storage と chrome.storage は非同期です

于 2013-02-07T08:58:46.630 に答える
0

あなたの場合、ユーザーの状態をサーバー側に保存することを意味しているように聞こえますが、これは拡張機能自体に状態を保存することとは大きく異なります。たとえば、Chrome拡張機能のユーザーがログインするたびに追跡するサーバー側コード(PHPまたは他のサーバー側言語で記述)がある場合があります。そのためには、「セッション」が非常に一般的で優れており、実装されていますおそらくすべてのサーバー側言語。これが探しているものである場合は、拡張機能を詳しく調べる前に、サーバー側のプログラミングと ajax について読むことをお勧めします。

ただし、Chrome 拡張機能の状態を「ローカルに」(サーバーを介さずに) 保存する場合は、html5 の localStorage が適切なオプションhttp://diveintohtml5.info/storage.htmlです。

于 2013-02-07T06:33:27.047 に答える