上下文:在启动时向Electron
应用程序添加功能以检查许可证数据等,方法是使用XMLHttpRequest
向远程服务器发送查询字符串。在我的测试平台中,全新启动后,最初的请求将花费3-4秒,但随后的请求会立即返回。那让我担心。
那么一个缓存问题?我并没有做太多的网络工作,但经过搜索发现(How to clear the cache data in Electron(atom shell)?)。 las,这似乎没有什么不同。我还尝试在查询字符串的末尾添加时间戳,以强制执行新请求。
我做错了什么吗?我已经升级到最新版本的Electron,没有发现任何不同。
function clearCache() {
var win = remote.getCurrentWindow();
win.webContents.session.clearStorageData(null, () => {
// this NEVER gets called
console.log('session cleared');
});
win.webContents.session.clearCache(function () {
// this DOES get called
console.log('cache cleared', (new Date()).getTime());
});
}
// attempt to force new request
var timestamp = (new Date()).getTime();
obj.timestamp = timestamp;
var url = domain + queryString.stringify(obj);
xhttp.open("GET", url);
xhttp.timeout = 1000 * 30;
xhttp.send();