การทำงานของการส่งข้อมูลด้วย stdio
เหตุใดเซิร์ฟเวอร์ภายในเครื่องจึงสื่อสารผ่านอินพุตและเอาต์พุตมาตรฐาน
การทำงานของการส่งข้อมูลด้วย stdio เป็นบทเรียน MCP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MCP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน
สื่อสารผ่านท่อ
ก่อนเชื่อมต่อเซิร์ฟเวอร์ของคุณเข้ากับสิ่งใด คุณต้องรู้ก่อนว่าเซิร์ฟเวอร์สื่อสารจริงอย่างไร ช่องทางเริ่มต้นคือ stdio 🔌
อินพุตมาตรฐาน เอาต์พุตมาตรฐาน
ชื่อ stdio เป็นเพียงอินพุตมาตรฐานรวมกับเอาต์พุตมาตรฐาน ซึ่งเป็นสตรีมข้อความสองรายการที่ทุกโปรแกรมมีอยู่แล้วตั้งแต่เริ่มทำงาน
โฮสต์สร้างโปรเซสให้คุณ
เมื่อใช้ stdio โฮสต์จะเปิดใช้เซิร์ฟเวอร์ของคุณเป็นโปรเซสลูก ไม่มีพอร์ตและไม่มีการเรียกผ่านเครือข่าย มีเพียงโปรแกรมภายในเครื่องที่โฮสต์เป็นผู้ดูแล
ข้อความไหลเป็นบรรทัด
ไคลเอนต์เขียนข้อความ JSON-RPC ไปยัง อินพุตมาตรฐานของโปรเซสเซิร์ฟเวอร์ และเซิร์ฟเวอร์จะเขียนคำตอบกลับผ่านเอาต์พุตมาตรฐาน
คุณสั่งให้ทำงาน มันจะเชื่อมต่อ
โดยปกติคุณแทบไม่ต้องเริ่มสคริปต์ด้วยตนเอง เพียงบอกคำสั่งแก่โฮสต์ แล้วโฮสต์จะเรียกใช้คำสั่งนั้นเพื่อเริ่มเซิร์ฟเวอร์ของคุณ
{
"command": "python",
"args": ["server.py"]
}เอาต์พุตมาตรฐานสำคัญมาก
เนื่องจากคำตอบเดินทางผ่านเอาต์พุตมาตรฐาน สตรีมนี้จึงสงวนไว้สำหรับโพรโทคอล การใช้ print ที่ไม่เกี่ยวข้องในสตรีมนี้จะทำให้ JSON ที่ไคลเอนต์คาดหวังเสียหาย
บันทึกไปยังข้อผิดพลาดมาตรฐาน
ต้องการจดบันทึกไว้ดูเองหรือไม่ ให้ส่งบันทึกไปยังข้อผิดพลาดมาตรฐาน โฮสต์จะถือว่าสตรีมนี้เป็นบันทึก ดังนั้นข้อมูลสำหรับแก้ไขข้อบกพร่องจะไม่ปะปนกับสตรีมข้อความ
import sys
print("server ready", file=sys.stderr)ไคลเอนต์หนึ่งตัวต่อหนึ่งโปรเซส
การเชื่อมต่อ stdio แต่ละรายการเป็นลิงก์ส่วนตัว: ไคลเอนต์หนึ่งตัวต่อหนึ่งโปรเซส เมื่อปิดไคลเอนต์ โปรเซสเซิร์ฟเวอร์ของคุณก็จะปิดลงตามไปด้วย
เหมาะสำหรับเครื่องมือภายในเครื่อง
stdio เหมาะอย่างยิ่งกับการทำงานภายในเครื่อง ไม่ต้องใช้การยืนยันตัวตน ไฟร์วอลล์ หรือ URL จึงเหมาะสำหรับช่วงที่คุณพัฒนา 💻
ข้อจำกัดของการทำงานภายในเครื่อง
ข้อจำกัดคือเซิร์ฟเวอร์ต้องอยู่บนเครื่องเดียวกับโฮสต์ หากต้องการเข้าถึงเซิร์ฟเวอร์จากระยะไกล ภายหลังคุณจะเปลี่ยนไปใช้การส่งผ่าน HTTP
หนึ่งข้อความต่อหนึ่งบรรทัด
ข้อความ JSON-RPC แต่ละรายการจะอยู่ในบรรทัดเดียวและลงท้ายด้วยการขึ้นบรรทัดใหม่ การจัดกรอบเช่นนี้ช่วยให้ทั้งสองฝั่งแบ่งสตรีมออกเป็นข้อความแยกกันได้อย่างชัดเจน
ตรวจสอบอย่างรวดเร็ว
เซิร์ฟเวอร์ stdio ส่งคำตอบ JSON-RPC ไปที่ใด
สรุป
คุณได้เห็นแล้วว่า stdio ทำงานอย่างไร: โฮสต์สร้างโปรเซสของคุณ สื่อสารผ่านอินพุตและเอาต์พุตมาตรฐาน และเก็บบันทึกไว้ในข้อผิดพลาดมาตรฐาน ตอนนี้มาเชื่อมต่อกับ Claude กัน ✅
เรียนรู้ Python ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 30
- บทเรียน
- 120
คำถามที่พบบ่อย
บทเรียน “การทำงานของการส่งข้อมูลด้วย stdio” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การทำงานของการส่งข้อมูลด้วย stdio” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MCP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การทำงานของการส่งข้อมูลด้วย stdio”
เหตุใดเซิร์ฟเวอร์ภายในเครื่องจึงสื่อสารผ่านอินพุตและเอาต์พุตมาตรฐาน คุณปฏิบัติ MCP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MCP Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน MCP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “การทำงานของการส่งข้อมูลด้วย stdio” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน MCP Academy นี้ได้ไหม
ได้ บทเรียน MCP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การทำงานของการส่งข้อมูลด้วย stdio
- เชื่อมต่อเข้ากับ Claude Desktop
- สำรวจด้วย MCP Inspector
- แก้ไขข้อบกพร่องของเซิร์ฟเวอร์ที่เริ่มทำงานไม่ได้