我是Java语言的新手,正在尝试编写一个用户脚本来跟踪在特定网站内进行的所有Ajax调用,如果响应状态代码不是200,我想自动重复该请求。
另外,我想重复的这些请求都是POST请求,这可能使它更加困难。
到目前为止,我正在跟踪所有Ajax调用,但是由于似乎无法捕获POST请求发送的formdata,因此我不知道如何重复失败的调用。
(function() { // Overriding XMLHttpRequest
var oldXHR = window.XMLHttpRequest;
function newXHR() {
var realXHR = new oldXHR();
realXHR.addEventListener("readystatechange", function() {
console.log("an ajax request was made")
console.log(realXHR.status)
//If the status is not 200, repeat the request with same data etc
}, false);
return realXHR;
}
window.XMLHttpRequest = newXHR;
})();
最佳答案
您可以尝试再次调用相同的函数
if(realXHR.status !==200){
newXHR();
}