无法重定向`file:///`请求

时间:2018-09-24 04:00:57

标签: firefox-webextensions file-uri

我试图覆盖file:/// URL(无论是指向文件还是目录),以使扩展程序显示其自己的文件浏览器以查看目录视图,并且还可能允许编辑文件的单个文件。

我进行了以下尝试,但从未为文件或文件夹触发监听器:

browser.webRequest.onBeforeRequest.addListener((details) => {
    const {documentUrl, originUrl, type, requestBody, url} = details;
    if ((/^file:/).test(originUrl)) {
        return {
            redirectUrl: browser.extension.getURL('filebrowser/index.html') + '?abc=1'
        };
    }
}, {
    urls: ['file:///*/*']
}, ['blocking']);

我确实向清单添加了"file:///*/*"权限("<all_urls>"也无效)(并且我为重定向添加了“ web_accessible_resources”,但从未实现)。

我猜想这可能是由于https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest/RequestFilter#Type所致,它指出尽管文件模式支持其他协议,但仅使用HTTP / HTTPS发出的请求才可以处理事件。但是,onHeadersReceived似乎确实至少收到了file:///个文件请求(尽管不是目录请求),即使重定向所需的onBeforeRequest也没有。

任何人都可以确认是否有任何解决方法吗?

0 个答案:

没有答案