【问题标题】:Edge Extension: get current tab url边缘扩展:获取当前选项卡 url
【发布时间】:2018-11-11 12:05:57
【问题描述】:

我正在尝试使用 microsoft edge 扩展工具包将 chrome 扩展移植到 microsoft edge。

在我的扩展程序中,我必须获取当前标签页 url,才能执行 api 调用。

所以在 chrome 和 firefox 中,我在 browser_action 中使用此代码:

chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
  // print object for debugging
  console.log(JSON.stringify(tabs[0]));

  // get active tab url
  var activeTab = tabs[0];
  var activeTabURL = activeTab.url;
  document.getElementById("input").value = activeTabURL;
});

在 Edge 中,url 不在此对象中,我在文档中找不到任何内容。谁能告诉我如何在边缘获取网址?

【问题讨论】:

  • 我不了解 Edge,但在 Chrome 中,url 属性只有在 manifest.json 的“权限”中具有 "tabs" 以及匹配的 URL 模式或“activeTab”时才会出现.
  • 没错...在 chrome 和 firefox 中,我的代码正在运行,并且 manifest.json 中的“activeTab”权限已设置;-)
  • 快速谷歌搜索显示 Edge 似乎不支持 activeTab。
  • 正如我在我的问题中所写的那样,我知道并寻找一种方法来获取边缘中的 url
  • 不,你没有写你知道它,但通过简单的排除,唯一的方法是在“权限”(或“可选权限”,如果 Edge 支持它)。

标签: javascript google-chrome-extension microsoft-edge


【解决方案1】:

在 cmets 中,已确定原始扩展程序使用 "activeTab" 权限在没有广泛权限的情况下访问活动选项卡的详细信息。

由于它是not supported by Edge (yet),因此您实际上无权查看选项卡的详细信息(因为这是敏感数据),您需要退回到拥有广泛的权限。

声明 "tabs" 权限就足以获取任何打开的标签页的 URL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-28
    • 2010-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多