Google Chrome 拡張機能を開発しています。ユーザーの状態を維持したい。ユーザーがログインした場合、ページの更新後にログインする必要があります。このタイプの状態を維持するにはどうすればよいですか。
3 に答える
バックグラウンド ページは、ブラウザーのセッションまで値を保存します。安定したストレージを探している場合は、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");
});
参考文献
次のメソッドを使用して変数を保存できますlocalStorage
: localStorage.setItem()
、localStorage.getItem()
、しかし localStorage には制限があります
ビッグデータを利用した場合chrome.storage.local
、またはchrome.storage.sync
localStorage は高速で動作し、chrome.storage と chrome.storage は非同期です
あなたの場合、ユーザーの状態をサーバー側に保存することを意味しているように聞こえますが、これは拡張機能自体に状態を保存することとは大きく異なります。たとえば、Chrome拡張機能のユーザーがログインするたびに追跡するサーバー側コード(PHPまたは他のサーバー側言語で記述)がある場合があります。そのためには、「セッション」が非常に一般的で優れており、実装されていますおそらくすべてのサーバー側言語。これが探しているものである場合は、拡張機能を詳しく調べる前に、サーバー側のプログラミングと ajax について読むことをお勧めします。
ただし、Chrome 拡張機能の状態を「ローカルに」(サーバーを介さずに) 保存する場合は、html5 の localStorage が適切なオプションhttp://diveintohtml5.info/storage.htmlです。