Sto*_*246 4 javascript google-chrome-extension
我正在制作一个记录请求标头的 Chrome 扩展。
在我的background.js文件中我有这个代码
chrome.webRequest.onSendHeaders.addListener(function(res){
res.requestHeaders.forEach(header => {
headers.push(header)
})
}, {urls : ["<all_urls>"]})
Run Code Online (Sandbox Code Playgroud)
但 res.requestHeaders 返回未定义(无法读取未定义的 forEach 属性)
应该在addListener的第三个参数中指定:
chrome.webRequest.onSendHeaders.addListener(
fn,
{urls: ['<all_urls>']},
['requestHeaders']);
Run Code Online (Sandbox Code Playgroud)
要修改响应,您需要在参数中添加“blocking”,并在清单的权限中添加“webRequestBlocking”,请参阅webRequest 文档以获取更多信息。
要在现代版本的 Chrome 中处理特殊标头(cookie、等),您还referer需要指定,如果您想支持旧版本的 Chrome,请执行以下操作:extraheaders
chrome.webRequest.onSendHeaders.addListener(fn, {
urls: ['<all_urls>'],
}, [
'blocking',
'requestHeaders',
chrome.webRequest.OnSendHeadersOptions.EXTRA_HEADERS,
].filter(Boolean));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
640 次 |
| 最近记录: |