Jak mogę debugować HTTP POST w Chrome?

196

Chciałbym wyświetlić dane HTTP POST wysłane w Chrome.

Dane są teraz w pamięci i mam możliwość ponownego przesłania formularza.

Wiem, że jeśli prześlę ponownie, serwer zgłosi błąd. Czy mimo to mogę wyświetlić dane zapisane w pamięci Chrome?

goodguys_activate
źródło
Tutaj znajduje się ładny przykład video-giff, w jaki sposób przejść do karty sieci: wpza.net/using-google-chrome-to-capture-post-data-in-wordpress
WPZA

Odpowiedzi:

232
  1. Przejdź do Narzędzi dla programistów Chrome (Menu Chrome -> Więcej narzędzi -> Narzędzia dla programistów)
  2. Wybierz kartę „Sieć”
  3. Odśwież stronę, na której jesteś
  4. Otrzymasz listę zapytań HTTP, które miały miejsce, gdy konsola sieciowa była włączona. Wybierz jeden z nich po lewej stronie
  5. Wybierz kartę „Nagłówki”

Voila!

wprowadź opis zdjęcia tutaj

mrówa
źródło
74
To jest GET, a nie POST
QkiZ
7
Przechwytuje żądania GET i POST, @QkiZ
almulo
48
Uwaga: aby faktycznie zobaczyć prośbę o ponowne załadowanie strony, zaznacz „Zachowaj dziennik”.
Bryce Guinta
39
Brakuje tu treści żądania? :-(
Timo,
3
W Chrome 71 treść (tj. Dane POST) pojawia się na dole karty Nagłówki pod nagłówkiem „Żądaj ładunku”.
MSC,
138

Możesz filtrować żądania HTTP POST za pomocą Chrome DevTools . Po prostu wykonaj następujące czynności:

  1. Otwórz Chrome DevTools ( Cmd+ Opt+ Ina Macu, Ctrl+ Shift+ Ilub F12Windows) i kliknij kartę „Sieć”
  2. Kliknij ikonę „Filtruj”
  3. Wpisz swoją metodę filtrowania: method:POST
  4. Wybierz żądanie, które chcesz debugować
  5. Wyświetl szczegóły żądania, które chcesz debugować

Zrzut ekranu

Chrome DevTools

Testowane z Chrome w wersji 53.

Benny Neugebauer
źródło
1
Działa na Chrome 70. Filtrowanie za pomocą method:POSTjest bardzo przydatne
użytkownik1071847
14

Możesz użyć Canary w wersji Chrome, aby zobaczyć ładunek żądań żądań POST.

Żądanie ładunku

Mihijs
źródło
Czy są jakieś linki, aby uzyskać więcej informacji na ten temat lub po jego zmianie? EDYCJA: Odpowiedziałem na własne pytanie. Jeśli używasz interfejsu Fetch API, Chrome nie przechwytuje tych żądań do wyświetlenia na karcie . Najwyraźniej Kanarek jest lub będzie wkrótce.
virtualandy
6
Teraz jest dostępny w standardowych wersjach samego chromu!
Nachiketha,
5

Inną przydatną opcją może być dedykowane narzędzie do debugowania HTTP. Jest kilka dostępnych, sugerowałbym HTTP Toolkit : projekt open source, nad którym pracowałem (tak, mogę być stronniczy), aby rozwiązać ten sam problem dla siebie.

Główną różnicą jest użyteczność i moc. Narzędzia deweloperskie Chrome nadają się do prostych rzeczy, dlatego polecam zacząć od nich, ale jeśli próbujesz zrozumieć informacje tam zawarte, a potrzebujesz więcej wyjaśnień lub więcej mocy, przydatne mogą być odpowiednio ukierunkowane narzędzia!

W tym przypadku pokaże Ci pełną treść testu POST, której szukasz, z przyjaznym edytorem i podświetleniem (wszystkie obsługiwane przez VS Code ), dzięki czemu możesz kopać. Będzie oczywiście zawierał nagłówki z żądaniami i odpowiedziami, ale z dodatkowymi informacjami, takimi jak dokumenty z MDN ( Mozilla Developer Network ) dla każdego standardowego nagłówka i kodu statusu, jaki możesz zobaczyć.

Obraz jest wart tysiąca odpowiedzi StackOverflow:

Zrzut ekranu HTTP Toolkit pokazujący żądanie POST i jego treść

Tim Perry
źródło
1
Wygląda bardzo obiecująco, ale są pewne problemy na moim komputerze, opublikowałem je na GitHub.
userlond
0

Inni ludzie udzielili bardzo miłych odpowiedzi, ale chciałbym zakończyć ich pracę dodatkowym narzędziem programistycznym. Nazywa żywo nagłówków HTTP i można zainstalować go w Firefoksie , aw Chrome mamy taką samą wtyczkę jak ten .

Praca z nim jest łatwa.

  1. Korzystając z przeglądarki Firefox, przejdź do strony internetowej, na którą chcesz otrzymać prośbę o wpis.

  2. W menu Firefox Narzędzia-> Nagłówki HTTP na żywo

  3. Pojawi się nowe okno, a wszystkie szczegóły metody http zostaną zapisane w tym oknie. W tym kroku nie musisz nic robić.

  4. Na stronie internetowej wykonaj czynność (zaloguj się, prześlij formularz itp.)

  5. Spójrz na okno wtyczki. Wszystko jest rejestrowane.

Wystarczy pamiętać trzeba sprawdzić na przechwytywanie .

wprowadź opis zdjęcia tutaj

Jimmy
źródło
0

Ma trudną sytuację: jeśli prześlesz formularz posta, Chrome otworzy nową kartę, aby wysłać żądanie. Jest to do tej pory, ale jeśli wyzwoli zdarzenie, aby pobrać plik (i) , ta karta zostanie natychmiast zamknięta, aby uniemożliwić przechwycenie tego żądania w Narzędziu programistycznym.

Rozwiązanie: Przed przesłaniem formularza pocztowego należy odciąć sieć , co powoduje, że żądanie nie może zostać pomyślnie wysłane, aby karta nie została zamknięta. Następnie możesz przechwycić komunikat żądania w Chrome Devtool (w razie potrzeby odświeżenie nowej karty)

Dcalsky
źródło