MCP Academy · บทเรียน

อ่านข้อผิดพลาดบนสายสื่อสาร

ถอดรหัสรหัสข้อผิดพลาดและข้อความเมื่อการเรียกทำงานไม่สำเร็จ

บทเรียน 4 จาก 413 ขั้นตอน

อ่านข้อผิดพลาดบนสายสื่อสาร เป็นบทเรียน MCP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MCP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน

เมื่อการเรียกใช้เกิดข้อผิดพลาด

ไม่ใช่ทุกคำขอจะสำเร็จ เมื่อเกิดข้อผิดพลาด JSON-RPC จะส่งออบเจ็กต์ error กลับมาแทนผลลัพธ์ และการอ่านออบเจ็กต์นี้คือวิธีที่เร็วที่สุดในการแก้ไขปัญหา

ออบเจ็กต์ข้อผิดพลาด

การตอบกลับที่มีข้อผิดพลาดจะคง id ของคำขอไว้ แต่แทนที่ result ด้วยออบเจ็กต์ข้อผิดพลาดที่มีรหัสและข้อความ

{"jsonrpc": "2.0", "id": 3,
 "error": {"code": -32601, "message": "Method not found"}}

รหัสเป็นตัวเลข

ข้อผิดพลาดแต่ละรายการจะมี code ที่เป็นตัวเลข รหัสมาตรฐานของ JSON-RPC เป็นจำนวนลบ และมีอยู่ไม่กี่รหัสที่พบซ้ำแล้วซ้ำอีกในการรับส่งข้อมูล

แยกวิเคราะห์ไม่สำเร็จ: -32700

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

{"error": {"code": -32700, "message": "Parse error"}}

ไม่พบเมธอด: -32601

รหัส -32601 ระบุว่าไม่มีชื่อเมธอดนี้อยู่ ให้ตรวจสอบการพิมพ์ผิด หรือเมธอดที่เซิร์ฟเวอร์ไม่เคยประกาศไว้ เช่น toolz/list

{"error": {"code": -32601, "message": "Method not found"}}

พารามิเตอร์ไม่ถูกต้อง: -32602

รหัส -32602 ระบุว่าพารามิเตอร์ไม่ถูกต้อง เช่น อาร์กิวเมนต์หายไปหรือเป็นชนิดที่ไม่ถูกต้อง เมธอดมีอยู่จริง แต่ข้อมูลนำเข้าที่คุณส่งไม่ตรงตามที่เมธอดรองรับ

{"error": {"code": -32602, "message": "Invalid params"}}

ข้อผิดพลาดภายใน: -32603

รหัส -32603 เป็นข้อผิดพลาดภายในแบบครอบคลุมของเซิร์ฟเวอร์ คำขอถูกต้องดี แต่เกิดปัญหาบางอย่างขึ้นระหว่างการจัดการคำขอ

{"error": {"code": -32603, "message": "Internal error"}}

อ่านฟิลด์ข้อความ

รหัสจะบอกหมวดหมู่ ส่วน message จะบอกสิ่งที่เกิดขึ้น ควรอ่านเสมอ เพราะเซิร์ฟเวอร์มักระบุฟิลด์ที่มีปัญหาหรือสาเหตุที่แน่ชัดไว้

ข้อมูลเพิ่มเติมสำหรับรายละเอียด

ข้อผิดพลาดอาจมีฟิลด์ data ซึ่งเก็บรายละเอียดแบบมีโครงสร้างเพิ่มเติม เช่น พารามิเตอร์ที่ถูกปฏิเสธ ฟิลด์นี้มีประโยชน์อย่างมากต่อการแก้จุดบกพร่องเมื่อมีอยู่

{"error": {"code": -32602, "data": {"field": "a"}}}

ข้อผิดพลาดของโพรโทคอลกับความล้มเหลวของเครื่องมือ

error ของ JSON-RPC หมายความว่าโพรโทคอลเองทำงานล้มเหลว ส่วนเครื่องมือที่ทำงานได้แต่ส่งคืน isError ยังคงเป็นผลลัพธ์ปกติ ดังนั้นอย่าสับสนระหว่างสองกรณีนี้

ปฏิกิริยาตอบสนองเมื่อแก้จุดบกพร่อง

สร้างนิสัยนี้ไว้: อ่าน code เพื่อจัดหมวดหมู่ อ่าน message เพื่อระบุตำแหน่ง จากนั้นตรวจสอบ data เพื่อหาต้นเหตุที่แน่ชัด วิธีนี้ช่วยให้ปัญหา MCP ส่วนใหญ่ถูกแก้ได้อย่างรวดเร็ว

ตรวจสอบอย่างรวดเร็ว

คุณส่งเมธอดที่ถูกต้อง แต่มีอาร์กิวเมนต์หายไป รหัสข้อผิดพลาดใดตรงกับกรณีนี้

สรุป: การถอดรหัสความล้มเหลว

ตอนนี้คุณสามารถอ่านความล้มเหลวได้อย่างคล่องแคล่วแล้ว ออบเจ็กต์ error มี code, message และบางครั้งมี data โดย code ใช้จัดหมวดหมู่ message ใช้อธิบาย และ data ใช้ระบุต้นเหตุอย่างเจาะจง

เริ่มต้นได้ฟรี

เรียนรู้ Python ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

คำถามที่พบบ่อย

บทเรียน “อ่านข้อผิดพลาดบนสายสื่อสาร” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “อ่านข้อผิดพลาดบนสายสื่อสาร” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MCP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “อ่านข้อผิดพลาดบนสายสื่อสาร”

ถอดรหัสรหัสข้อผิดพลาดและข้อความเมื่อการเรียกทำงานไม่สำเร็จ คุณปฏิบัติ MCP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MCP Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน MCP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “อ่านข้อผิดพลาดบนสายสื่อสาร” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน MCP Academy นี้ได้ไหม

ได้ บทเรียน MCP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. คำขอ การตอบกลับ และการแจ้งเตือน
  2. องค์ประกอบของการเรียก JSON-RPC
  3. การจับมือเริ่มต้น
  4. อ่านข้อผิดพลาดบนสายสื่อสาร
← กลับไปที่ MCP Academy