การสร้างลำดับชั้น API
Custom endpoints และ persisted queries สามารถจัดระเบียบเป็นลำดับชั้นได้ โดยการประกาศ parent ซึ่งจะทำให้ endpoint path ของตนเองต่อขยายจาก endpoint path ของ parent
ตัวอย่างเช่น เราสามารถสร้างลำดับชั้นดังนี้:
- Parent persisted query:
/graphql-query/posts/ - Child persisted query:
/graphql-query/posts/english/ - Child persisted query:
/graphql-query/posts/french/
จำนวนระดับชั้นไม่มีข้อจำกัด ดังนั้นเราสามารถสร้างได้ดังนี้:
/graphql-query/posts//graphql-query/posts/mobile-app//graphql-query/posts/mobile-app/english//graphql-query/posts/mobile-app/french//graphql-query/posts/website//graphql-query/posts/website/english//graphql-query/posts/website/french/
ดูคู่มือ กลยุทธ์สำหรับลำดับชั้น API เพื่อดูการกำหนดค่าที่เป็นไปได้
การสืบทอด Property
Child custom endpoints และ persisted queries จะสืบทอด properties จาก parent
Custom endpoints และ persisted queries
Child custom endpoints และ persisted queries จะสืบทอด schema configuration ของ parent
เฉพาะ persisted queries
Child persisted queries จะสืบทอด GraphQL query และตัวแปรของ parent ด้วย ค่าของตัวแปรสามารถถูก override โดย child ได้ทีละตัวแปร
ตัวอย่างเช่น หาก parent ประกาศตัวแปรเหล่านี้:
{
"limit": 5,
"offset": 0
}และ child ประกาศตัวแปรเหล่านี้:
{
"limit": 10
}ดังนั้น ตัวแปรที่คำนวณแล้วสำหรับ child จะเป็น:
{
"limit": 10,
"offset": 0
}การสร้างลำดับชั้น API
ใน custom endpoint หรือ persisted query ใน Document settings จะมีส่วน Page Attributes พร้อม dropdown ของ entities ทั้งหมด เพื่อเลือกเป็น parent:

Persisted queries
เมื่อเลือก parent ใน persisted query จะมีตัวเลือกใหม่ปรากฏขึ้นว่า "Inherit query from ancestor(s)?"
ตั้งค่าตัวเลือกนี้เป็น Yes เพื่อให้ child persisted query สืบทอด GraphQL query ของ parent:

ตัวอย่าง
Persisted query นี้กำหนด GraphQL query และประกาศตัวแปร $limit ด้วยค่า 1:

Child persisted query ต่อขยายจากมัน โดยสืบทอด GraphQL query และ override ค่าของตัวแปร $limit เป็น 2:
