打开页面时,从后台脚本到内容脚本获取Cookies

时间:2018-09-28 19:05:38

标签: google-chrome-extension firefox-webextensions

我创建了一个需要用户访问令牌并发出http请求的WebExtension,因此,每当用户登录我的网站时,我都将访问令牌保存在cookie中。然后,我的扩展程序将检索此信息以执行某些操作。

我的背景js

var pnumber,JWTtoken
function getCookiesForTab(uri) {
   var gettingAllCookies = browser.cookies.getAll({url: uri});
   gettingAllCookies.then((cookies) => {
   var JWTtoken
   if (cookies.length > 0) { 

    for (let cookie of cookies) {
      if (cookie.name == 'JWTtoken'){
        this.JWTtoken = cookie.value
      }
    }else{
      console.log("No cookies Found");
    }
  });
}
getCookiesForTab("http://localhost:5000/")
chrome.tabs.query({active:true, currentWindow:true},function(tabs){
    chrome.tabs.sendMessage(tabs[0].id, 
{JWTtoken:this.JWTtoken})
}) 

和我的内容脚本

    chrome.runtime.onMessage.addListener(function(req,send,res){
       if(req.JWTtoken){
        console.log(req.JWTtoken);
        // this.JWTtoken = req.JWTtoken
        DoSomeWork(req.JWTtoken)
      }
   }) 

问题是我想在用户打开页面时正确获取cookie,但它仅在单击扩展名时才会隐藏消息并获取消息。 我已经将background.js脚本添加到我的popup.html中。 反正有做

0 个答案:

没有答案