chrome extensions插件获取当前url和网站cookie学习v3版本

我现在有一个需求是想要拿到某些网站的cookie,如果是手动一个一个打开检查,然后发一个请求,再复制拿cookie未免有点过于复杂了,所以就像偷懒一下,用插件获取一下:

想要获取当前站点的cookie,得先获取到当前站点的url吧,所以在manifest.json中添加权限:

permissions里面增加tabs和cookies,是为了用tabs获取当前网站的url,cookies就是为了获取cookie的

host_permissions里面的"*://*/*" 和  "<all_urls>" 表示所有站点,应该要其中一个就可以表示所有站点了

然后在js文件中编写一个方法: 第一个红框是获取当前站点url的,第二个chrome.cookies.getAll()是获取cookie的:

  // 获取网站的cookie,并打印出来
  function handleCookie(params) {
    chrome.tabs.query({ active: true, lastFocusedWindow: true }, tabs => {
      let url = tabs[0].url;
      // use `url` here inside the callback because it's asynchronous!
      console.log('url--', url);
      chrome.cookies.getAll({ url }, function (cookies) {
        const resList = cookies.map(item => {
          return `${item.name}=${item.value}`
        })
        const cookieStr = resList.join(";")
        console.log("cookies-----", cookieStr);
        document.getElementById("cookies").innerHTML = cookieStr
      });
    });
  }

 根据官网的api可以看到:

https://developer.chrome.com/docs/extensions/reference/cookies/#method-getAll

 需要传递一个对象进去,和一个回调函数,第一个对象的作用其实可以过滤cookie,如果是空对象,就会获取到所有网站的cookie ,如果传一个url过去,就会过滤出这个url站点的cookie.

最后我在html页面放置了一个节点用于展示这个cookie:

最后看结果吧:成功获取到cookie并展示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

1024小神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值