我想实现一个支持修改http头的功能。我的扩展工作如下:
- 用户打开页面 A,然后单击我的扩展程序的工具栏项。
- 我的扩展程序将打开一个新窗口(页面 B)并让用户填写 http 标头。
- 然后我将在一个新标签(页面 C)中打开一个带有初始页面 A 的 url。
- 在我的 background.html 中,我想使用 chrome.webRequest.onBeforeSendHeaders.addListener 来监听任何请求并修改来自页面 C 的请求。
我的问题是如何知道请求来自我的扩展程序打开的新页面 B。我尝试 Tab.openerTabId。但是我发现 Tab.openerTabId 是用初始化页面 A 的 tabId 设置的,而不是我的扩展页面 B 的 tabId。
“Tab.openerTabId == 页 A 的 tabId”不正确。“Tab.openerTabId ==页面A的tabId”的页面包含两种页面:页面A直接打开的页面和我的扩展打开的页面。