Ale*_*ley 1 google-chrome header response google-chrome-extension
我目前正在开发Chrome扩展程序,需要添加/更改标头值,但仅限于特定页面.像这样的东西:
chrome.onPageRequest(function(host) {
if(host == 'google.com') {
chrome.response.addHeader('X-Auth', 'abc123');
}
});
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激 :)
您可以使用chrome.webRequest API来实现此目的.你需要以下内容:
在清单中声明适当的权限:
...
"permissions": [
...
"webRequest",
"*://*.google.com/*"
]
注册chrome.webRequest.onHeadersReceived()事件的侦听器并修改标头.为了能够修改标题,您需要定义'responseHeaders'额外信息(请参阅监听器函数的第三个参数):
chrome.webRequest.onHeadersReceived.addListener(function(details) {
console.log(details);
details.responseHeaders.push({
name: 'X-Auth',
value: 'abc123'
});
return { responseHeaders: details.responseHeaders };
}, {
urls: ['*://*.google.com/*']
}, [
"responseHeaders"
]);
请记住,webRequest只有在您的后台页面是持久性的情况下,权限才有效,因此请从清单中删除相应的行(如果它存在 - 应该这样做):
...
"background": {
"persistent": false, // <-- Remove this line or set it to `true`
"scripts": [...]
...
另外,请记住,Google通常会根据用户的国家/地区重定向请求(例如重定向www.google.com到www.google.gr),在这种情况下,过滤器不会让他们联系到您的onHeadersReceived听众.
| 归档时间: |
|
| 查看次数: |
2332 次 |
| 最近记录: |