2012-07-21 16 views

Odpowiedz

8

Cytat Mike Cooper na podobnym pytaniem:

O ile mi wiadomo, Firebug nie może tego zrobić. Istnieje jednak bardzo przydatne rozszerzenie przeglądarki Firefox, w duchu Firebug, o nazwie Tamper Data. To powinno być w stanie zrobić, co chcesz.

Umożliwia monitorowanie każdego żądania zgłoszonego przez przeglądarkę i można włączyć opcję, która pozwala przeglądać i edytować każde żądanie przed wysłaniem.

Zobacz inne odpowiedzi u źródła: How do I POST to a web page using Firebug?
Zobacz także: Using Firebug to send form data


Powyższe działa, jeśli po prostu chcesz zmodyfikować żądań HTTP, ale faktycznie tworzyć żądań HTTP, istnieje Firefox rozszerzenie o nazwie Poster, które ma następujący opis:

Narzędzie programistyczne do interakcji z usługami sieciowymi i innymi zasobami internetowymi, które umożliwia tworzenie żądań HTTP, ustawianie treści obiektu i typu zawartości. To pozwala na interakcję z usług internetowych i sprawdzić wyniki ...

12

W rzeczywistości, można teraz (od Firefoksa 3.5) zrobić czystą XHR post z Firebug, do każdej domeny, podobnie jak w czystym JavaScript na stronę, z zastrzeżeniem tych samych ograniczeń.

Kod jest nieco przydługi i nie przydatny w sumie jednak, jeśli chcesz go używać często (jeśli nie przechowywać go i skopiować i wkleić za każdym razem)

wkleić do konsoli (to otworzyć Edytor komend automatycznie, jak to> 1 linia)

var xhr = new XMLHttpRequest(); 
xhr.open("POST", "http://test/xhrtest.php?w=www"); 
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
xhr.send("a=aaa&b=bbb"); 

Pamiętaj, że na stronie serwera, należy enable CORS, aby zobaczyć odpowiedź w Firebug (w przeciwnym razie wniosek zostanie wysłany, ale nie będzie widać odpowiedź w Firebug; można to było zobaczyć w Fiddler); jeśli otworzyłeś Firebuga, gdy jesteś na stronie http://foo/somepage, ten adres URL zostanie wysłany przez XHR w polu nagłówka HTTP referrer, a ta domena musi mieć możliwość odbierania odpowiedzi XHR przez nagłówek Access-Control-Allow-Origin, który możesz ustawić w konfiguracji serwera, lub bezpośrednio na stronie.

Przykład w PHP:

<?php 
header('Access-Control-Allow-Origin: *'); 
//you can adjust it more fine-grained, perhaps in an 'if' 
//header('Access-Control-Allow-Origin: ' . $_SERVER['HTTP_ORIGIN']); 
//header('Access-Control-Allow-Origin: http://foo'); 

echo $_POST['a'] . "\r\n"; 
echo $_POST['b'] . "\r\n"; 
echo $_GET['w'] . "\r\n"; 
?> 

Następnie można użyć kartę Firebug za Net aby zbadać reakcję (a także w zakładce Console jeśli masz Console > RIGHT CLICK > Show XMLHttpRequest opcja włączona).

+1

Użyj [encodeURIComponent] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/encodeURIComponent), jeśli chcesz używać znaków jak "&" w zmiennych POSTed. –

Powiązane problemy