我正在尝试使用webRequest API来更改网页上加载的.swf文件…该页面加载了一个名为chat.swf的文件,但我想重定向到同一目录中的chat2.swf以便使用其他文件.我被告知这可行,但我不知道如何正确使用此API,我找不到任何示例@ _ @
function incerceptChat(chat){
console.log( "onBeforeRequest", details );
if(chat.url == swf1){
chat = swf2;
}
}
这是我的功能,它应该改变URL,但我无法让它工作(可能在某处错误的语法……)我正在用它来听:
chrome.experimental.webRequest.onBeforeRequrest.addListener(interceptChat, {"redirectUrl": chat});
解决方法:
这是如何重定向特定URL的基础知识.
function interceptRequest(request) {
console.log('onBeforeRequest ', request.url);
if (request && request.url && request.url === 'http://example.org/') {
return { redirectUrl: 'http://www.google.com' }
}
}
chrome.experimental.webRequest.onBeforeRequest.addListener(interceptRequest, null, ['blocking']);
您还可以使用进一步限制URL匹配的对象替换null,因为Chrome会比JS更高效.请注意不要过于贪婪,因为这会导致一般网页浏览出现问题.
function interceptRequest(request) {
return { redirectUrl: 'http://example.com/chat2.swf' }
}
chrome.experimental.webRequest.onBeforeRequest.addListener(interceptRequest, { urls: ['http://example.com/swf'] }, ['blocking']);