Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Konstruktor interfejsu API danych (DAB) udostępnia internetowy interfejs API RESTful, który umożliwia dostęp do tabel, widoków i procedur składowanych z połączonej bazy danych. Każdy uwidoczniony obiekt bazy danych jest definiowany jako jednostka w konfiguracji środowiska uruchomieniowego.
Domyślnie usługa DAB hostuje punkty końcowe REST w:
https://{base_url}/api/{entity}
Uwaga / Notatka
Wszystkie składniki ścieżki i parametry zapytania są wrażliwe na wielkość liter.
Słowa kluczowe obsługiwane w narzędziu Data API Builder
| Concept | REST | Przeznaczenie |
|---|---|---|
| Projection | $select | Wybieranie pól, które mają być zwracane |
| Filtering | $filter | Ogranicz wiersze zgodnie z warunkiem |
| Sortowanie | $orderby | Definiowanie kolejności sortowania |
| Rozmiar strony | $first | Ogranicz elementy na stronę |
| Kontynuacja | $after | Kontynuuj z ostatniej strony |
Struktura podstawowa
Aby wywołać interfejs API REST, skonstruuj żądanie przy użyciu tego wzorca:
{HTTP method} https://{base_url}/{rest-path}/{entity}
Przykład odczytu wszystkich rekordów z book jednostki:
GET https://localhost:5001/api/book
Odpowiedź jest obiektem JSON:
{
"value": [
{ "id": 1, "title": "Dune" },
{ "id": 2, "title": "Foundation" }
]
}
Uwaga / Notatka
Domyślnie daB zwraca maksymalnie 100 elementów na zapytanie, chyba że skonfigurowano inaczej (runtime.pagination.default-page-size).
Typy zapytań
Każda jednostka REST obsługuje odczyty zarówno kolekcji, jak i pojedynczego rekordu.
| Operation | Opis |
|---|---|
GET /api/{entity} |
Zwraca listę rekordów |
GET /api/{entity}/{primary-key-column}/{primary-key-value} |
Zwraca jeden rekord według klucza podstawowego |
Przykład przywołuje jeden rekord:
GET /api/book/id/1010
Przykład zwraca wiele wyników:
GET /api/book
Filtrowanie wyników
Użyj parametru zapytania, $filter aby ograniczyć zwracane rekordy.
GET /api/book?$filter=title eq 'Foundation'
To zapytanie zwraca wszystkie książki, których tytuł jest równy "Foundation".
Filtry mogą obejmować operatory logiczne dla bardziej złożonych zapytań:
GET /api/book?$filter=year ge 1970 or title eq 'Dune'
Zobacz odwołanie do argumentów $filter dla obsługiwanych operatorów, takich jak eq, ne, lt, le, and i or.
Sortowanie wyników
Parametr $orderby definiuje sposób sortowania rekordów.
GET /api/book?$orderby=year desc, title asc
Zwraca książki uporządkowane według year malejąco, a następnie według title.
Aby uzyskać więcej informacji, zobacz dokumentację argumentu $orderby .
Ograniczanie wyników {#first-and-after}
Parametr $first ogranicza liczbę rekordów zwracanych w jednym żądaniu.
GET /api/book?$first=5
Zwraca domyślnie pięć pierwszych książek uporządkowanych według klucza podstawowego.
Możesz również użyć $first=-1 polecenia , aby zażądać skonfigurowanego maksymalnego rozmiaru strony.
Dowiedz się więcej w odniesieniu do argumentu $first.
Dalsze wyniki
Aby pobrać następną stronę, użyj $after razem z tokenem kontynuacji z poprzedniej odpowiedzi.
GET /api/book?$first=5&$after={continuation-token}
Token $after identyfikuje miejsce zakończenia ostatniego zapytania.
Aby uzyskać szczegółowe informacje, zobacz $after odniesienia dotyczące argumentów .
Wybór pola (projekcja)
Użyj $select, aby kontrolować, które pola są uwzględnione w odpowiedzi.
GET /api/book?$select=id,title,price
Zwraca tylko określone kolumny.
Jeśli brakuje pola lub jest ono niedostępne, funkcja DAB zwraca wartość 400 Bad Request.
Aby uzyskać szczegółowe informacje, zobacz $select odwołanie do argumentów.
Modyfikowanie danych
Interfejs API REST obsługuje również operacje tworzenia, aktualizowania i usuwania w zależności od uprawnień jednostki.
| Metoda | Akcja |
|---|---|
POST |
Tworzenie nowego elementu |
PUT |
Zamień istniejący element (lub utwórz, jeśli brakuje) |
PATCH |
Aktualizowanie istniejącego elementu (lub tworzenie, jeśli brakuje) |
DELETE |
Usuwanie elementu według klucza podstawowego |
Przykład tworzenia nowego rekordu:
POST /api/book
Content-type: application/json
{
"id": 2000,
"title": "Leviathan Wakes"
}
Przykład aktualizowania istniejącego rekordu:
PATCH /api/book/id/2000
Content-type: application/json
{
"year": 2011,
"pages": 577
}
Przykład usuwania rekordu:
DELETE /api/book/id/2000