小编Mar*_*ski的帖子

Network.setCacheDisabled 不禁用缓存

我正在开发一个 chrome 扩展,它附加调试器,然后使用 chrome.debugger.sendCommand 向调试器发送命令来设置一些设置。

Network.emulateNetworkConditions在使用和api的情况下,这似乎可以正常工作Emulation.setCPUThrottlingRate,但它似乎不适用于Network.setCacheDisabled.

这是发送不起作用的命令的函数:

function setCacheDisabled(tabId) {
return new Promise((resolve) => {
    chrome.debugger.sendCommand(
        {tabId}, "Network.setCacheDisabled", {cacheDisabled: true}, function() {
            console.log("cache conditions set: "); 
            resolve();
        }
    );
});
Run Code Online (Sandbox Code Playgroud)

在此之前,调试器附加有:

function attachDebugger(tabId) {
return new Promise((resolve) => {
    chrome.debugger.attach({tabId}, "1.0", function() {
        resolve();
    });
});
Run Code Online (Sandbox Code Playgroud)

为了测试它是否正常工作,我确保在 chrome 调试器中未选中“禁用缓存”复选框,清除网络选项卡中所有以前的网络请求日志记录,然后运行代码以附加调试器并发送消息,最后清爽。刷新后,我查看网络选项卡,在许多 js、csv 和 svg 文件的大小列中看到“(来自磁盘缓存)”。我希望看到文件的大小(显示它是新鲜下载的),与我手动选择“禁用缓存”复选框时看到的相同。

google-chrome-extension google-chrome-devtools

6
推荐指数
0
解决办法
822
查看次数