J'essaye de surcharger la méthode XMLHttpRequest. * En JavaScript afin qu'une page web puisse déterminer si une requête Ajax a eu lieu sans utiliser de callback intrusif. Maintenant, quelque chose comme cela fonctionne relativement bien en utilisant la plupart des cadres JS:Déterminer quand une requête XMLHttpRequest a été effectuée sans rappels
XMLHttpRequest.prototype.getResponseHeader = function() {
alert('O hai, looks like you made an AJAX request.');
}
Cependant, il y a deux prises:
- getResponseHeader ne peut pas être utilisé comme getResponseHeader plus.
- Cela ne fonctionne pas dans les exemples AJAX simples. à savoir
xmlhttp.open("GET","simple.html",false);
Est-il possible JS peut refléter XMLHttpRequest.open()
ou de toute façon que je peux chaîne quelque chose. J'ai essayé un million de paradigmes (l'usine, le clonage, l'emballage - la plupart aboutissant à une récursion infinie) et rien ne semble fonctionner. Peut-être que c'est juste impossible. Des idées?
le temp comme paramètre à appliquer devrait être 'ceci' pour maintenir la portée de l'appel original –
Il serait également préférable de créer ceci dans une fonction pour que la variable' temp' ne soit pas placée dans la portée globale – AnthonyWJones
Merci Gaby, j'ai modifié pour refléter cela. Et Anthony: J'essaie toujours de minimiser les globales, mais comme je n'avais besoin que de 2 lignes de code pour illustrer je ne voulais pas compliquer les choses – Bob