Google Chrome แสดงการตอบสนอง JSON AJAX เป็นแผนผังและไม่เป็นข้อความธรรมดา


215

ฉันไม่พบคำตอบสำหรับสิ่งนี้:

การโทร AJAX ของฉันส่งคืนข้อมูล JSON ในเครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ Google Chrome> แหล่งข้อมูล> XHR เมื่อฉันคลิกที่ทรัพยากรทางซ้ายและจากนั้นบนแท็บเนื้อหาฉันเห็นสตริง JSON เป็นสตริงและไม่เป็นต้นไม้อย่าง Firebug และ Firebug Lite

ฉันจะบังคับให้ Chrome ใช้เป็นต้นไม้ได้อย่างไร มีประเภทเนื้อหาที่ไฟล์ PHP ของฉันต้องมีหรือไม่?

ฉันยินดีที่จะรู้คำตอบ!

ขอบคุณ Stefanos


คำตอบของ @Matt McClure ด้านล่างคือคำตอบ!
bcm

ฉันยังมีปัญหาในการรับโครงสร้างต้นไม้เมื่อสตริงเป็นอัญประกาศเดี่ยว 'แทนที่จะเป็นเครื่องหมายคำพูดคู่ "," เปลี่ยน "เป็น" ช่วย
Matt

คำตอบ:


426

วิธีดูมุมมองต้นไม้ใน Chrome เวอร์ชันล่าสุด:

ไปที่เครื่องมือสำหรับนักพัฒนา> เครือข่าย> การตอบสนองที่กำหนด> ดูตัวอย่าง


105
คัดสรรแท็บ "ดูตัวอย่าง" ทั้งหมดและดูที่แท็บ "คำตอบ" ขอบคุณ!
Ted Naleid

8
แต่ฉันคิดว่าจะได้รับสิ่งนี้คุณต้องมีประเภทเนื้อหาที่ถูกต้อง
alexserver

4
ใช่คุณต้องระบุประเภทเนื้อหา "application / json" ที่ถูกต้องสำหรับ chrome เพื่อให้คุณสามารถเลื่อนลงได้
tweak2

5
แท้จริงแล้วมันใช้งานง่ายน้อยกว่าเล็กน้อยเพราะบนแท็บส่วนหัวพวกเขาให้เราสลับระหว่าง "ดิบ" และ "แยกวิเคราะห์" ดังนั้นใคร ๆ ก็คาดหวังว่าพวกเขาจะเสนอมุมมอง "แยกวิเคราะห์" ที่คล้ายคลึงกันในแท็บตอบกลับ
G. Stoynev

1
ฉันหวังว่ามันคือ JSON จริง ๆ แทนที่จะเป็นต้นไม้
Simon_Weaver

57

Google Chrome รองรับสิ่งนี้ ( Developer Tools > Network > [XHR item in list] Preview)

นอกจากนี้คุณสามารถใช้เครื่องมือของบุคคลที่สามเพื่อจัดรูปแบบเนื้อหา json ที่นี่ 's หนึ่งที่นำเสนอมุมมองต้นไม้และนี่เป็นเพียงอีกว่ารูปแบบข้อความ (และไม่ตรวจสอบ)


6

ที่ถูกต้องชนิดเนื้อหาข้อมูล JSON application/jsonคือ ฉันคิดว่านั่นคือสิ่งที่คุณหายไป


6
น่าเสียดายที่นี่ยังไม่ได้บังคับให้ Chrome เปลี่ยนสตริง JSON ให้กลายเป็นต้นไม้ ขอบคุณนะ!
GRboss

3

ฉันพบคำตอบ:

คุณต้องเข้ารหัส json ของคุณเช่นนี้: {"c":21001,"m":"p"}แต่ไม่ใช่{c:21001,m:"p"}หรือ{'c':21001,'m':'p'}

ดังนั้นคีย์ของ dict ต้องอยู่ในเครื่องหมายคำพูดคู่: "จากนั้น chrome จะแสดงตัวอย่างเป็น json แทนที่จะเป็นข้อความธรรมดา


7
นั่นเป็นเพราะสิ่งแรกคือ JSON ที่ถูกต้องและตัวอย่างอื่น ๆ ไม่ใช่ (แม้ว่าจะเป็นจาวาสคริปต์ที่ถูกต้อง) ดูsimonwillison.net/2006/oct/11/json
styfle

2

เพื่อให้สามารถแสดงข้อความ JSON ได้อย่างถูกต้องจะต้องมีชนิด mime "application / json" และต้องมีโครงสร้างที่ถูกต้อง

คุณสามารถตรวจสอบโครงสร้างได้ที่นี่


1

เกิดปัญหากับบิลด์ของ Google Chrome Dev build 24.0.1312.5 ที่ทำให้พาเนลดูตัวอย่างไม่แสดงแผนผังวัตถุ json อีกต่อไป แต่เป็นข้อความแบบแบน ควรได้รับการแก้ไขใน dev ถัดไป

ดูเพิ่มเติมได้ที่นี่: http://code.google.com/p/chromium/issues/detail?id=160733



0

ฉันไม่แน่ใจว่า Chrome ได้เพิ่มคุณสมบัตินี้ตั้งแต่คำตอบสุดท้าย แต่ฉันสามารถดูคำตอบ json โดย ...

  • เปิดเครื่องมือนักพัฒนาซอฟต์แวร์ในเบราว์เซอร์ในขณะที่อยู่ในหน้าพร้อมคำขอ
  • ส่งคำขอ
  • ในเครื่องมือสำหรับนักพัฒนา - แท็บ"คอนโซล" - คลิกที่ต้นไม้ "วัตถุ" ใต้ทรัพยากรเพื่อขยาย

... ฉันสามารถดูการตอบสนองเป็นลำดับชั้นที่อ่านได้ซึ่งแสดงสิ่งที่จะถามและสิ่งที่ส่งคืน (แท็บทั้งเครือข่ายหรือทรัพยากรไม่มีประโยชน์ใด ๆ ที่ฉันสามารถหาได้)

ขอให้มีความสุข!


-1

คุณสามารถใช้ส่วนขยายของ Google Chrome: JSONView ผลลัพธ์ json ที่จัดรูปแบบทั้งหมดจะปรากฏบนเบราว์เซอร์โดยตรง


2
OP ถามโดยเฉพาะเกี่ยวกับรหัส json ที่แสดงในเครื่องมือ dev
digout
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.