Google chrome extension 如何从chrome扩展跟踪浏览器会话
您好,我需要知道如何从google chrome extension跟踪我的网站会话。我的网站已作为google chrome中的一个扩展添加。单击扩展图标时,它将导航到我的网站主页。这是一个登录页面。因此我需要知道用户是否已登录。我希望这只能通过会话完成。但我不知道如何从chrome扩展中跟踪会话变量。请帮助我。一个解决方案是将登录状态从网页传送到扩展(如所述)Google chrome extension 如何从chrome扩展跟踪浏览器会话,google-chrome-extension,Google Chrome Extension,您好,我需要知道如何从google chrome extension跟踪我的网站会话。我的网站已作为google chrome中的一个扩展添加。单击扩展图标时,它将导航到我的网站主页。这是一个登录页面。因此我需要知道用户是否已登录。我希望这只能通过会话完成。但我不知道如何从chrome扩展中跟踪会话变量。请帮助我。一个解决方案是将登录状态从网页传送到扩展(如所述) 从您的网页上,您必须向分机发送消息,告知用户的登录状态 用户成功登录后,请确保通知扩展: chrome.runtime.send
从您的网页上,您必须向分机发送消息,告知用户的登录状态
- 用户成功登录后,请确保通知扩展:
chrome.runtime.sendMessage(,{status:“logged in”})代码>
- 一旦检测到用户会话已结束(过期或由于手动注销),请确保通知分机:
chrome.runtime.sendMessage(,{status:“logged out”})代码>
从您的分机收听网页中的消息并相应更新 扩展源代码: background.js:
var url = "<the_url_of_your_webpage_that_sends_messages>";
/* Listen for external messages (messages from web-pages) */
chrome.runtime.onMessageExternal.addListener(function(msg, sender) {
if (sender.url == url) {
/* OK, this page is allowed to communicate with me */
if (msg.status === "logged in") {
/* Cool, the user is logged in */
alert("Logged in !");
} else if (msg.status === "logged out") {
/* How sad, the user is leaving */
alert("Logged out !");
}
}
});
{
"manifest_version": 2,
"name": "Test Extension",
"version": "0.0",
"background": {
"persistent": false,
"scripts": ["background.js"]
},
"externally_connectable": {
"matches": ["<the_url_of_your_webpage_that_sends_messages>"]
}
}
var url=”“;
/*侦听外部消息(来自网页的消息)*/
chrome.runtime.onMessageExternal.addListener(函数(msg,sender){
if(sender.url==url){
/*好的,这个页面可以和我交流*/
如果(消息状态==“已登录”){
/*酷,用户已登录*/
警报(“已登录!”);
}否则如果(msg.status==“注销”){
/*用户要离开了,真是太伤心了*/
警报(“注销!”);
}
}
});
manifest.json:
var url = "<the_url_of_your_webpage_that_sends_messages>";
/* Listen for external messages (messages from web-pages) */
chrome.runtime.onMessageExternal.addListener(function(msg, sender) {
if (sender.url == url) {
/* OK, this page is allowed to communicate with me */
if (msg.status === "logged in") {
/* Cool, the user is logged in */
alert("Logged in !");
} else if (msg.status === "logged out") {
/* How sad, the user is leaving */
alert("Logged out !");
}
}
});
{
"manifest_version": 2,
"name": "Test Extension",
"version": "0.0",
"background": {
"persistent": false,
"scripts": ["background.js"]
},
"externally_connectable": {
"matches": ["<the_url_of_your_webpage_that_sends_messages>"]
}
}
{
“清单版本”:2,
“名称”:“测试扩展”,
“版本”:“0.0”,
“背景”:{
“坚持”:假,
“脚本”:[“background.js”]
},
“外部可连接”:{
“匹配项”:[“”]
}
}