我想在javascript/browser中启用ajax响应的缓存.
默认情况下,始终发出请求,但浏览器可能会从其缓存中提供结果.要禁止使用缓存的结果,请将cache设置为false.如果自上次请求后资产未被修改,则导致请求报告失败,请将ifModified设置为true.
但是,这些都不会强制缓存.
动机:
我想$.ajax({...})在我的初始化函数中调用,其中一些函数请求相同的url.有时我需要调用其中一个初始化函数,有时我会调用几个函数.
因此,如果已经加载了特定的URL,我想最小化对服务器的请求.
我可以推出自己的解决方案(有些困难!),但我想知道是否有一种标准的方法可以做到这一点.
问题是当您在同一个indexeddb中有两个不同的对象库时,主键值似乎在所有商店中"共享".
<body>
<script type="text/javascript">
//prefixes of implementation that we want to test
window.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
//prefixes of window.IDB objects
window.IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction || window.msIDBTransaction;
window.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange || window.msIDBKeyRange
if (!window.indexedDB) {
window.alert("Your browser doesn't support a stable version of IndexedDB.")
}
var db;
var request = window.indexedDB.open("newDatabase", 4);
request.onerror = function(event) {
console.log("error: ");
};
request.onsuccess = function(event) {
db = request.result;
console.log("success: "+ db);
};
request.onupgradeneeded = function(event) …Run Code Online (Sandbox Code Playgroud)