如何清除net request electronjs中缓存的statusCode



在我的应用程序中,我使用net.request(url)。我需要获取statusCode来显示正确的页面,例如,如果statusCode是404,我想重定向到not-found.html̀

不幸的是,某个地方的缓存出现了问题:

  1. 首先,当statusCode为404时,应用程序重定向到404 url模板。没关系
  2. 然后,当我修复页面时,我有一个statusCode 200,应用程序重定向到正确的页面url。没关系
  3. 但当我再次破坏我的页面时(应该是404没有找到(,我得到了一个状态代码200

如何清除应用程序或此请求?

我的代码:

const request = net.request(url);
request.on("response", (response) => {
// console.log(`STATUS: ${response.statusCode}`)
// console.log(`HEADERS: ${JSON.stringify(response.headers)}`)
response.on("data", (chunk) => {});
response.on("end", () => {
if (response.statusCode === 200) {
win1.loadURL(url, { extraHeaders: "pragma: no-cachen" });
win1.show();
} else {
let url = `file://${__dirname}/not-found.html`;
win1.loadURL(url, { extraHeaders: "pragma: no-cachen" });
win1.show();
}
});
});
request.end();

您可以禁用磁盘缓存。

启动应用程序时,添加--disable-http-cache参数,如下所述:

electron . --disable-http-cache

最新更新