2

Я искал какое-то время, но все, что я смог найти примеры того, как на самом деле сделать эти запросы ...Проверьте, если сайт делает запрос X HTTP с JavaScript

То, что я пытаюсь сделать заключается в том, чтобы проверить, делает ли сайт http-запрос после нажатия кнопки на сайт X

Ex. http://test.s3.amazonaws.com/test/1.txt

Я предполагаю, что есть способ, чтобы получить все исходящие запросы, а затем отфильтровать список, но я не могу даже получить на запросы

Что я сделал до сих пор просто вставив EventListener проверить что нажата кнопка X, а затем я хочу проверить эти запросы.

<script language="javascript"> 
document.getElementById("button").addEventListener('click', buttonClicked, true); 

function buttonClicked(){ 
    -->Check requests made after button is clicked.<-- 
} 
</script> 
+1

Вы слышали о FireBug? Это отличный инструмент для проверки содержимого HTML/JS/Network. Вы можете просто отслеживать, если страница отправляет HTTP-запросы в любом месте! http://getfirebug.com/network – powtac

+0

Не понимаю, что вы имеете в виду с 'Проверить запросы, сделанные после нажатия кнопки. '. Вам нравится получать файл? –

+0

В настоящее время вам даже не нужен Firebug. У всех современных браузеров эти инструменты встроены (в том числе Firefox, совсем недавно, у ведущего разработчика Firebug появилась новая работа, поэтому пользователям Mozilla необходимо было поднять ее). –

ответ

5

Я сделал основной сценарий для этого некоторое время назад, в основном вы просто обернуть встроенный XMLHttpRequest.

(function() { 
    'use strict'; 
    var oldXHR, stateChangeHandler, prop; 

    oldXHR = window.XMLHttpRequest; 

    stateChangeHandler = function (evt) { 
    switch (this.readyState) { 
     case oldXHR.OPENED: 
     console.log('Request was made', this, evt); 
     break; 
     case oldXHR.DONE: 
     console.log('Request finished', this, evt); 
     break; 
    } 
    }; 

    function newXHR() { 
    var xhr = new oldXHR(); 
    xhr.addEventListener('readystatechange', stateChangeHandler); 
    return xhr; 
    } 

    // Copy original states and toString 
    for (prop in oldXHR) 
    newXHR[prop] = oldXHR[prop]; 

    window.XMLHttpRequest = newXHR; 
})();