API Oluşturma
API OluşturmaAPI hiyerarşisi oluşturma

API hiyerarşisi oluşturma

Özel endpoint'ler ve persisted queries bir hiyerarşi içinde düzenlenebilir. Bu, bir üst öğe bildirdiklerinde gerçekleşir; bu durumda endpoint yolları, üst öğenin endpoint yolunu genişletir.

Örneğin, şu hiyerarşiyi oluşturabiliriz:

  • Üst persisted query: /graphql-query/posts/
  • Alt persisted query: /graphql-query/posts/english/
  • Alt persisted query: /graphql-query/posts/french/

Seviye sayısı sınırsızdır, dolayısıyla şunları da oluşturabiliriz:

  • /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/

Olası yapılandırmaları görmek için API hiyerarşileri için stratejiler kılavuzuna göz atın.

Özellik kalıtımı

Alt özel endpoint'ler ve persisted queries, özellikleri üst öğeden devralır.

Özel endpoint'ler ve persisted queries

Alt özel endpoint'ler ve persisted queries, üst öğenin şema yapılandırmasını devralır.

Yalnızca persisted queries

Alt persisted queries ayrıca üst öğenin GraphQL sorgusunu ve değişkenlerini de devralır. Değişken değerleri, alt öğe tarafından değişken bazında geçersiz kılınabilir.

Örneğin, üst öğe şu değişkenleri bildirirse:

{
  "limit": 5,
  "offset": 0
}

Ve alt öğe şu değişkenleri bildirirse:

{
  "limit": 10
}

Alt öğe için hesaplanan değişkenler şöyle olur:

{
  "limit": 10,
  "offset": 0
}

API hiyerarşisi oluşturma

Özel endpoint veya persisted query içinde, Belge ayarlarında, üst öğe olarak seçmek üzere diğer tüm varlıkların bir açılır listesiyle birlikte Sayfa Nitelikleri bölümü bulunur:

API kalıtımı

Persisted queries

Bir üst öğe seçildiğinde, persisted query yeni bir seçenek sunar: "Inherit query from ancestor(s)?"

Bu seçeneği Evet olarak ayarlayın; böylece alt persisted query, üst öğenin GraphQL sorgusunu devralır:

API kalıtımı

Örnek

Bu persisted query, GraphQL sorgusunu tanımlar ve $limit değişkenini 1 değeriyle bildirir:

Üst persisted query

Bir alt persisted query bunu genişletir; GraphQL sorgusunu devralır ve $limit değişkeninin değerini 2 olarak geçersiz kılar:

Alt persisted query