Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A Data API Builder (DAB) egy RESTful webes API-t biztosít, amellyel táblákat, nézeteket és tárolt eljárásokat érhet el egy csatlakoztatott adatbázisból. Minden közzétett adatbázis-objektum entitásként van definiálva a futtatókörnyezet konfigurációjában.
Alapértelmezés szerint a DAB a KÖVETKEZŐ helyen üzemelteti a REST-végpontokat:
https://{base_url}/api/{entity}
Megjegyzés:
Minden elérési útösszetevő és lekérdezési paraméter megkülönbözteti a kis- és nagybetűket.
A Data API Builderben támogatott kulcsszavak
| Concept | REST | Cél |
|---|---|---|
| Projection | $select | Adja meg, hogy mely mezőket adja vissza |
| Filtering | $filter | Sorok korlátozása feltétel szerint |
| Rendezés | $orderby | Rendezési sorrend meghatározása |
| Oldalméret | $first | Az elemek korlátozása oldalanként |
| Folytatás | $after | Folytatás az utolsó oldalról |
Alapszintű struktúra
REST API meghívásához hozzon létre egy kérést az alábbi mintával:
{HTTP method} https://{base_url}/{rest-path}/{entity}
Példa az entitás összes rekordjának olvasására book :
GET https://localhost:5001/api/book
A válasz egy JSON-objektum:
{
"value": [
{ "id": 1, "title": "Dune" },
{ "id": 2, "title": "Foundation" }
]
}
Megjegyzés:
Alapértelmezés szerint a DAB lekérdezésenként legfeljebb 100 elemet ad vissza, kivéve, ha másként van konfigurálva (runtime.pagination.default-page-size).
Lekérdezéstípusok
Minden REST-entitás támogatja a kollekciós, valamint az egyrekordos olvasást is.
| Operation | Leírás |
|---|---|
GET /api/{entity} |
Rekordlistát ad vissza |
GET /api/{entity}/{primary-key-column}/{primary-key-value} |
Egy rekordot ad vissza elsődleges kulcs szerint |
Példa egy rekord visszaadására:
GET /api/book/id/1010
Több értéket visszaadó példa:
GET /api/book
Eredmények szűrése
A lekérdezési $filter paraméterrel korlátozhatja a visszaadott rekordokat.
GET /api/book?$filter=title eq 'Foundation'
Ez a lekérdezés az összes olyan könyvet visszaadja, amelynek a címe "Foundation" (Alapozás) értékű.
A szűrők logikai operátorokat is tartalmazhatnak összetettebb lekérdezésekhez:
GET /api/book?$filter=year ge 1970 or title eq 'Dune'
Tekintse meg a támogatott operátorok $filter argumentumainak hivatkozását, például eq: , ne, lt, leand, és or.
Találatok rendezése
A $orderby paraméter határozza meg a rekordok rendezésének módját.
GET /api/book?$orderby=year desc, title asc
Ez visszaadja a year szerinti csökkenő sorrendben rendezett könyveket, majd a title szerint.
További részletekért tekintse meg a $orderby argumentumra vonatkozó hivatkozást .
Eredmények korlátozása {#first-and-after}
A $first paraméter korlátozza, hogy egy kérelem hány rekordot ad vissza.
GET /api/book?$first=5
Ez az első öt könyvet adja vissza, alapértelmezés szerint az elsődleges kulcs szerint rendezve.
A konfigurált maximális oldalméretet is kérheti $first=-1 .
További információ a $first argumentumhivatkozásban.
Folyamatos eredmények
A következő oldal lekéréséhez használja $after az előző válaszból származó folytatási tokent.
GET /api/book?$first=5&$after={continuation-token}
A $after jogkivonat azonosítja, hogy hol fejeződött be az utolsó lekérdezés.
Részletekért lásd $after argumentumhivatkozást .
Mezőválasztás (vetület)
A válaszban szereplő mezők szabályozására használható $select .
GET /api/book?$select=id,title,price
Ez csak a megadott oszlopokat adja vissza.
Ha egy mező hiányzik vagy nem érhető el, a DAB ad vissza 400 Bad Request.
Részletekért lásd $select argumentumhivatkozást .
Adatok módosítása
A REST API az entitásengedélyek függvényében támogatja a létrehozási, frissítési és törlési műveleteket is.
| Metódus | Tevékenység |
|---|---|
POST |
Új elem létrehozása |
PUT |
Meglévő elem cseréje (vagy ha hiányzik a létrehozás) |
PATCH |
Meglévő elem frissítése (vagy ha hiányzik a létrehozás) |
DELETE |
Elem eltávolítása elsődleges kulcs alapján |
Példa új rekord létrehozására:
POST /api/book
Content-type: application/json
{
"id": 2000,
"title": "Leviathan Wakes"
}
Példa meglévő rekord frissítésére:
PATCH /api/book/id/2000
Content-type: application/json
{
"year": 2011,
"pages": 577
}
Példa rekord törlésére:
DELETE /api/book/id/2000