ทั้งสามคือ operation type โดยแต่ละอย่าง map ไปยัง root type ใน schema:
ทั้งสามคือ operation type โดยแต่ละอย่าง map ไปยัง root type ใน schema:
query GetPost { # read
post(id: "1") { title }
}
mutation AddComment { # write; returns the created object so the client updates its cache
addComment(postId: "1", text: "Nice!") {
id
text
}
}
subscription OnComment { # live: fires every time a comment is added
commentAdded(postId: "1") {
id
text
}
}
Mutation รับ อาร์กิวเมนต์ (มักเป็น object input) และควร ส่งคืนข้อมูลที่ได้รับผลกระทบ เพื่อให้ client รีเฟรชได้โดยไม่ต้องเรียกครั้งที่สอง กฎเรื่องการเรียงลำดับสำคัญ: mutation สองตัวใน document เดียว — deposit แล้วตามด้วย withdraw — จะทำงานตามลำดับนั้นเสมอ ในขณะที่ query field สองตัวอาจ resolve พร้อมกันได้
ผู้สัมภาษณ์ตรวจสอบว่าคุณรู้ว่า query ทำงานแบบขนานและไม่มี side effect ในขณะที่ mutation ทำงานแบบเรียงลำดับ และ subscription ต้องใช้ transport ที่มี state (WebSocket/SSE) การส่งคืนข้อมูลที่อัปเดตแล้วจาก mutation คือรายละเอียดเชิงปฏิบัติที่แยกคนที่เคยส่งมอบงาน GraphQL จริงออกจากคนที่แค่อ่านผ่าน ๆ มา
คลังคำถามสัมภาษณ์งาน IT พร้อมคำตอบโดยละเอียด — ตั้งแต่ระดับ Junior ถึง Senior
บริจาค