GraphQL - ส่วนประกอบของแอปพลิเคชัน

บทนี้จะกล่าวถึงส่วนประกอบ GraphQL ที่แตกต่างกันและวิธีที่พวกเขาสื่อสารกัน ส่วนประกอบแอปพลิเคชันทั้งหมดสามารถแยกแยะได้ดังนี้ -

  • ส่วนประกอบฝั่งเซิร์ฟเวอร์
  • ส่วนประกอบฝั่งไคลเอ็นต์

ส่วนประกอบฝั่งเซิร์ฟเวอร์

เซิร์ฟเวอร์ GraphQL สร้างองค์ประกอบหลักที่ฝั่งเซิร์ฟเวอร์และอนุญาตให้แยกวิเคราะห์คำค้นหาที่มาจากแอปพลิเคชันไคลเอนต์ GraphQL Apollo Server เป็นที่นิยมใช้มากที่สุดในการนำข้อกำหนด GraphQL ส่วนประกอบการเขียนโปรแกรมเซิร์ฟเวอร์อื่น ๆ มีดังต่อไปนี้ -

ซีเนียร์ สิ่งจำเป็นและคำอธิบายของเซิร์ฟเวอร์
1

Schema

สคีมา GraphQL เป็นศูนย์กลางของการใช้งานเซิร์ฟเวอร์ GraphQL และอธิบายถึงฟังก์ชันการทำงานที่มีให้สำหรับไคลเอนต์ที่เชื่อมต่อ

2

Query

แบบสอบถาม GraphQL คือคำขอแอปพลิเคชันไคลเอนต์เพื่อดึงข้อมูลจากฐานข้อมูลหรือ API เดิม

3

Resolver

Resolvers ให้คำแนะนำในการเปลี่ยนการดำเนินการ GraphQL ให้เป็นข้อมูล พวกเขาแก้ไขแบบสอบถามเป็นข้อมูลโดยการกำหนดฟังก์ชันตัวแก้ไข

ส่วนประกอบฝั่งไคลเอ็นต์

ด้านล่างนี้เป็นส่วนประกอบฝั่งไคลเอ็นต์ -

ซีเนียร์ เครื่องมือและคำอธิบาย
1

GraphiQL

อินเทอร์เฟซที่ใช้เบราว์เซอร์สำหรับการแก้ไขและทดสอบการสืบค้นและการกลายพันธุ์ของ GraphQL

2

ApolloClient

เครื่องมือที่ดีที่สุดในการสร้างแอปพลิเคชันไคลเอนต์ GraphQL ทำงานร่วมกันได้ดีกับส่วนหน้าของ Javascript ทั้งหมด

แผนภาพด้านล่างแสดงไฟล์ Client-Server architecture. เว็บเซิร์ฟเวอร์สร้างขึ้นบน NodeJs และ Express framework มีการร้องขอไปยังเซิร์ฟเวอร์ Apollo GraphQL โดยแอปพลิเคชัน ReactJS (สร้างโดยใช้ไลบรารี Apollo Client) หรือแอปพลิเคชันเบราว์เซอร์ GraphiQL แบบสอบถามจะถูกแยกวิเคราะห์และตรวจสอบความถูกต้องตามสคีมาที่กำหนดไว้ในเซิร์ฟเวอร์ หากสคีมาของคำขอผ่านการตรวจสอบความถูกต้องฟังก์ชันตัวแก้ไขที่เกี่ยวข้องจะถูกดำเนินการ ตัวแก้ไขจะมีรหัสสำหรับดึงข้อมูลจาก API หรือฐานข้อมูล