Tworzenie API
Tworzenie APITworzenie hierarchii API

Tworzenie hierarchii API

Niestandardowe endpointy i utrwalone queries mogą być zorganizowane w hierarchię. Osiąga się to poprzez zadeklarowanie rodzica, w którym to przypadku ścieżki endpointów będą rozszerzać ścieżkę endpointu rodzica.

Na przykład możemy utworzyć następującą hierarchię:

  • Nadrzędna utrwalona query: /graphql-query/posts/
  • Podrzędna utrwalona query: /graphql-query/posts/english/
  • Podrzędna utrwalona query: /graphql-query/posts/french/

Liczba poziomów jest nieograniczona, więc możemy również utworzyć:

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

Zapoznaj się z przewodnikiem Strategie hierarchii API, aby zobaczyć możliwe konfiguracje.

Dziedziczenie właściwości

Podrzędne niestandardowe endpointy i utrwalone queries będą dziedziczyć właściwości od rodzica.

Niestandardowe endpointy i utrwalone queries

Podrzędne niestandardowe endpointy i utrwalone queries będą dziedziczyć konfigurację schematu rodzica.

Tylko utrwalone queries

Podrzędne utrwalone queries będą również dziedziczyć query GraphQL i zmienne rodzica. Wartości zmiennych mogą być nadpisane przez element podrzędny, zmienna po zmiennej.

Na przykład, jeśli rodzic deklaruje następujące zmienne:

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

A element podrzędny deklaruje następujące zmienne:

{
  "limit": 10
}

Wówczas obliczone zmienne dla elementu podrzędnego będą wynosić:

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

Tworzenie hierarchii API

W niestandardowym endpoincie lub utrwalonej query, w ustawieniach Dokumentu, znajduje się sekcja Atrybuty strony z listą rozwijaną wszystkich innych encji, z których można wybrać rodzica:

Dziedziczenie API

Utrwalone queries

Po wybraniu rodzica, utrwalona query zaoferuje nową opcję, "Inherit query from ancestor(s)?"

Ustaw tę opcję na Tak, aby podrzędna utrwalona query dziedziczyła query GraphQL rodzica:

Dziedziczenie API

Przykład

Ta utrwalona query definiuje swoją query GraphQL i deklaruje zmienną $limit z wartością 1:

Nadrzędna utrwalona query

Podrzędna utrwalona query ją rozszerza, dziedzicząc query GraphQL i nadpisując wartość zmiennej $limit na 2:

Podrzędna utrwalona query