javascript – 使用chrome.experimental.webRequest API更改加载的文件?

我正在尝试使用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']);
上一篇:UnityWebRequest POST到PHP不起作用


下一篇:在PowerShell中使用curl(Invoke-WebRequest)