การตั้งค่าปลั๊กอิน
การตั้งค่าปลั๊กอินการเปิดใช้งานการแก้ไขระดับล่างของ persisted queries

การเปิดใช้งานการแก้ไขระดับล่างของ persisted queries

ใน GraphQL ไดเร็กทีฟคือฟังก์ชันที่ช่วยให้สามารถปรับเปลี่ยนผลลัพธ์จากฟิลด์ได้ ตัวอย่างเช่น ไดเร็กทีฟ @strUpperCase จะแปลงค่าของฟิลด์ให้เป็นตัวพิมพ์ใหญ่

ไดเร็กทีฟมี 2 ประเภท ได้แก่ ประเภทที่ใช้กับ schema และทำงานเสมอในทุก queries และประเภทที่ใช้กับ query โดยผู้ใช้หรือแอปพลิเคชันฝั่ง client

Gato GraphQL ใช้งานฟังก์ชันต่างๆ มากมายผ่านไดเร็กทีฟที่ใช้กับ schema ไดเร็กทีฟที่เกี่ยวข้องจะถูกเพิ่มลงใน query ผ่านอินเทอร์เฟซผู้ใช้

ตัวอย่างเช่น การให้บริการ Cache Control และ Access Control Cache Control ทำงานโดยการใช้ไดเร็กทีฟ @cacheControl กับ schema และดำเนินการผ่านปลั๊กอินด้วยอินเทอร์เฟซผู้ใช้ Cache Control List:

การกำหนดนโยบาย cache control

ตัวอย่างบางส่วนของไดเร็กทีฟประเภท schema ที่ควบคุม Access Control ได้แก่:

  • @disableAccess
  • @validateIsUserLoggedIn
  • @validateIsUserNotLoggedIn
  • @validateDoesLoggedInUserHaveAnyRole.
  • @validateDoesLoggedInUserHaveAnyCapability

การเปิดใช้งานการแก้ไขระดับล่าง

โมดูล "Low-Level Persisted Query Editing" ถูกปิดใช้งานโดยค่าเริ่มต้น เมื่อเปิดใช้งาน ไดเร็กทีฟทั้งหมดที่ใช้กับ schema จะพร้อมใช้งานในตัวแก้ไข GraphiQL เมื่อแก้ไข persisted queries

ไดเร็กทีฟประเภท schema

ด้วยวิธีนี้ คุณสามารถเพิ่มไดเร็กทีฟประเภท schema ลงใน GraphQL query โดยตรงเมื่อแก้ไข persisted query และข้ามการใช้อินเทอร์เฟซผู้ใช้

ตัวอย่างเช่น การกำหนด Cache Control สามารถทำได้โดยตรงใน persisted query โดยการตั้งค่าไดเร็กทีฟ @cacheControl พร้อมอาร์กิวเมนต์ maxAge บนฟิลด์:

ไดเร็กทีฟประเภท schema ที่พร้อมใช้งานในตัวแก้ไข Persisted queries