我最近听说我的GET请求将被缓存,并且对我的情况有疑问。
我使用javascript发送GET请求:
var ajax = new XMLHtpprequest();
ajax.open("GET", "https://my-website.com/somepage.php");
ajax.onload = function () {
// do something depending on the echoed response
}
ajax.send();
在我的somepage.php中:
$wp_user_id = get_current_user_id();
// echo something depending on the $wp_user_id back
我的理解是,当不同的登录用户打开ajax调用时,他们将获得最后一个缓存的ajax调用,这可能与他们各自的wp_user_id不一致。
我在网络服务器上使用没有插件的wordpress。
我的问题:
我正确吗?还是我对缓存了解一些错误?
如果我做错了,阻止这种行为的最佳方法是什么?
感谢您提前提出任何答案!
答案 0 :(得分:0)
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/response
您只需要编写一个响应处理程序。 (并收听onreadystatechange)
xhr.onreadystatechange = function() {
if (xhr.readyState === 4) {
responseHandlerCallback(xhr.response);
}
}
为防止缓存请求,请使用cachebuster
https://yourdomain.com/web-api/handler.php?cb=ej0d293dj