47

Tradycyjnie używam FireBug do debugowania żądań AJAX. Pozwala to sprawdzić zarówno treść żądania, jak i odpowiedź, która została odesłana z serwera. (powiadomi cię również w konsoli, kiedy to nastąpi, co jest przydatną funkcją, której Chrome wydaje się brakować).Wyświetl zawartość odpowiedzi AJAX w narzędziach dla programistów Chrome?

W Chrome mogę tylko wyświetlać żądania, a nie odpowiedzi. Kiedy próbuję sprawdzić odpowiedź, interfejs wyświetla tylko "Brak dostępnych treści" (Narzędzia dla programistów> Zasoby> myRequest.php> Treść). Czy muszę włączyć coś, aby narzędzia dla programistów Chrome zapamiętały te żądania?

EDYCJA: Jeśli ma to znaczenie, te żądania są wprowadzane wewnątrz obiektu Flash.

+1

Mam ten sam problem. Nie mam żadnych rozszerzeń. Mam zaznaczone "log XMLHttpRequests" i wypróbowałem wszystkie sugestie, które mogę znaleźć. Muszę użyć firefox + firebug lub charles proxy, aby wykonać wszystkie moje debugowanie za pomocą ajax. Co za ból, który wydaje się, że chrom nie ma żadnego wsparcia dla oglądania odpowiedzi ajax. –

+0

FYI żądania są również wykonywane z poziomu flasha, a odpowiedzi są aplikacją/jsonem –

Odpowiedz

4

Treść odpowiedzi ajax nie jest jeszcze widoczna, jeśli żądanie jest generowane przez wtyczkę. Jest szansa, że ​​ten problem zostanie wkrótce rozwiązany.

+8

To już nie jest prawda. Zobacz odpowiedź Masterov na to pytanie. –

+0

Weź również pod uwagę [Fiddler 2] (http://fiddler2.com/) - jest to szybka instalacja, jest bezpłatny i łatwy w użyciu. Nie ma innej aplikacji, która zapewnia bardziej szczegółowy i szczegółowy widok * wszystkiego *, co przechodzi przez przewód, dowolną przeglądarkę, dowolną wtyczkę, a nawet aplikacje. Uratowało mnie to więcej niż jeden raz :-) –

+1

Nie mam żadnych wtyczek i zawsze otrzymuję komunikat "To żądanie nie ma danych odpowiedzi" dla wszystkich moich wywołań ajaxowych. Zamiast tego muszę użyć firefox + firebug. Niesamowite, że Chrome nie obsługuje wyświetlania odpowiedzi ajax. –

1

Włącz śledzenie zasobów, a następnie sprawdź zakładkę zasobów. Śledzenie zasobów wydaje się działać znacznie lepiej, jeśli zaznaczysz "zawsze korzystaj z funkcji śledzenia zasobów".

+0

Śledzenie zasobów jest włączone. Widzę, że składane są prośby i nagłówki tych żądań, a nie treść. (UWAGA: dotyczy to tylko żądań AJAX i może dotyczyć tylko tych utworzonych we Flashu). – Ender

+0

To dziwne. Nie używam flasha, może to jest problem ... warto go wypróbować, by wypróbować nowszą wersję Chrome/chromu, jeśli jeszcze tego nie zrobiłeś. –

83

Jeśli jesteś na kanale dev Google Chrome:

http://www.chromium.org/getting-involved/dev-channel

... powinien być w stanie kliknąć prawym przyciskiem w konsoli narzędzi programisty, a następnie kliknij „Włącz rejestrowanie XMLHttpRequest”.

Po włączeniu pojawi się żądanie XHR w konsoli i będzie można je kliknąć, aby przejść do panelu zasobów, gdzie będzie można zobaczyć zawartość XHR.

+11

+1 - Powinna to być teraz zaakceptowana odpowiedź. Pytanie jest stare. – Mike

+9

To nie działa dla mnie. Mam włączone rejestrowanie XMLHTTPRequest, ale na karcie narzędzia XHR Response w narzędziach dewelopera zawsze wyświetla się "To żądanie nie zawiera danych odpowiedzi". Nie można zobaczyć żadnej odpowiedzi ajax w chrome (przynajmniej dla mnie). Muszę użyć firebug, który wyświetla to dobrze. –

+2

Tak, widzę tylko moje nazwy funkcji AJAX. Brak danych – BenRacicot

0

W wywołaniu zwrotnym fail pierwszy parametr ma właściwość o nazwie responseText.

3

Wystąpił ten sam problem: żądanie POST z lampy błyskowej + odpowiedź JSON + brak odpowiedzi wyświetlanej w inspektorze przeglądarki Chrome. Nie ma problemu z FF + FireBug.

Dodajesz charset = UTF-8 Content-Type w nagłówkach odpowiedzi rozwiązał problem dla mnie:

Content-Type: application/json; charset = utf-8

Nie jestem pewien, czy to jest właściwe rozwiązanie tego problemu, ale przynajmniej jestem w stanie zobaczyć teraz odpowiedź JSON w Inspektorze Chrome.

+0

Naprawiono również problem - brakujący zestaw znaków uniemożliwiał wyświetlanie danych. – nwinkler

+0

dobrze wiedzieć. Chcielibyśmy, aby chrome naprawił ten problem, ponieważ istnieją (inne, niezwiązane z toolchainem problemy z powodu uaktualnień systemu operacyjnego) problemy z moją możliwością zmiany typu zawartości, która jest zmieniana, i jest głupio, że taki prosty problem powoduje tak dużą dywersję. – Michael

+0

Niestety nie pomogło, już używam 'Content-Type: application/json; charset = utf-8' – user3479125

1

miałem pustą odpowiedź ponieważ skrypt wysyłał pustych danych przez

die(); 
4

Co może być wyświetlany jest tylko OPTIONS prośba o zamówienie Cors jest traktowany jako wniosek użyciem nagłówków XHR przez Google Chrome inspektora. Jeśli więc filtrujesz według żądań XHR, możesz zobaczyć tylko początkowe żądanie inspekcji OPTIONS, którego odpowiedź nie ma treści, i możesz się pomylić, ponieważ wygląda na to, że Chrome odmawia wyświetlenia odpowiedzi. Wyłącz filtr i przejdź do następnego żądania dla tego samego adresu URL, który najprawdopodobniej będzie "prawdziwym" żądaniem odpowiadającym temu żądaniu wstępnemu CORS.

0

Przyczyną może być nie tylko chrom, ale także podgląd może zostać zatrzymany nawet za pomocą kodu JS. Na przykład, istnieje pewna wtyczka dla Vue.js o nazwie vue-resorcese, która miała ten problem: Chrome, no response data after OPTIONS request? Mieszkałem z tym problemem kilka miesięcy, aż znalazłem to pytanie dzisiaj.Aktualne pytanie nigdy nie dało odpowiedzi, więc teraz je udostępniam tutaj.

Szczegóły: Wtyczka ta miała następny kod, który tworzy obiekt XHR:

if ('responseType' in xhr && SUPPORTS_BLOB) { 
     xhr.responseType = 'blob'; 
} 

Kod ten był ok i podgląd pracował ale do jakiejś aktualizacji chrom. Dzisiaj, gdy skomentowałem to, ponownie pojawił się podgląd! Najpierw sprawdź zawartość opakowania XHR, może być coś takiego.

To był rzadki problem, ponieważ został odtworzony tylko z preflightiem CORS. BTW klikając prawym przyciskiem myszy na OPTIONS XHR i REPLAY również pokazał podgląd.

Masz to