Javascript Chrome扩展:URL权限不起作用
我们正在使用ChromeWebRequestAPI拦截和修改请求的标题。 在Chrome72之前我一直工作得很好,但现在已经不工作了。但是当我用Javascript Chrome扩展:URL权限不起作用,javascript,google-chrome,google-chrome-extension,chrome-webrequest,Javascript,Google Chrome,Google Chrome Extension,Chrome Webrequest,我们正在使用ChromeWebRequestAPI拦截和修改请求的标题。 在Chrome72之前我一直工作得很好,但现在已经不工作了。但是当我用替换权限时,这也不起作用 你知道为什么它不起作用了吗? 目前我们将使用”,但这是一个巨大的权限,我们并不真正需要 manifest.json: "permissions": [ "webRequest", "webRequestBlocking", "*://*.merchantos.com/*" ] "permissions": [ "we
替换权限时,这也不起作用
你知道为什么它不起作用了吗?
目前我们将使用”
,但这是一个巨大的权限,我们并不真正需要
manifest.json:
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.merchantos.com/*"
]
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.merchantos.com/*",
"*://*.mywebsite.coom/*/,
]
background.js
chrome.webRequest.onHeadersReceived.addListener(
details => ({
responseHeaders: filter(details.responseHeaders),
}),
{ urls: ['*://*.merchantos.com/*'] },
['blocking', 'responseHeaders']
)
编辑:
问题已解决。对于Chrome 72,您现在需要将请求主机添加到您的权限中,以便能够编辑标题
manifest.json:
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.merchantos.com/*"
]
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.merchantos.com/*",
"*://*.mywebsite.coom/*/,
]
使用Chrome72,您需要在权限中指定要截取的目标URL和请求的网站URL
例如:https://www.mywebsite.com/
向https://abc.merchantos.com
您要拦截的。因此:
- mywebsite.com正在提出请求
- abc.merchantos.com是您想要拦截的目标
- 您必须在
manifest.json
中指定这两个URL:
{
...
"permissions": [
"webRequest",
"webRequestBlocking",
"*://*.mywebsite.com/*",
"*://*.merchantos.com/*"
],
...
}
请参阅webRequest的文档:要修改某些标题,您现在需要“extraHeaders”。您好@wOxxOm,谢谢您的回答。我尝试添加此extras标题,但没有任何更改:/javascript chrome.webRequest.onHeadersReceived.addListener(详细信息=>({responseHeaders:filter(details.responseHeaders),}),{url:['*://*.merchantos.com/*']},['blocking','responseHeaders','extraHeaders'])