Novinky ve tvůrci rozhraní Data API verze 1.1
Poznámky k verzi a informace o aktualizacích a vylepšeních v Tvůrci rozhraní DATA API (DAB) verze 1.1.
Důležité
Jedná se o první obecně dostupnou verzi (GA) pro Tvůrce rozhraní Data API (DAB).
Poznámky k verzi na GitHubu
Projděte si tyto stránky verzí, kde najdete úplný seznam všech změn a vylepšení:
Odkaz | |
---|---|
14. 5. 2024 – verze 1.1.7 | https://github.com/azure/data-api-builder/releases/tag/v1.1.7 |
Podpora .NET 8
DAB teď používá cílení na více verzí pro podporu verzí dlouhodobé podpory .NET 6 i .NET 8.
Další informace najdete v tématu azure/data-api-builder – Cílení na více rozhraní .NET.
Podpora více mutací v GraphQL
DAB teď podporuje kombinování operací několika mutací do jedné transakce GraphQL. Aktuální podpora je omezená pouze na create
operace.
Předpokládejme například, že máme Book
entity a Chapter
, které souvisejí. U více mutací můžete vytvořit primární entitu knihy a všechny související entity kapitol jako jednu operaci.
mutation {
createBook(
item: {
title: "Data API builder deep-dive"
chapters: [
{ name: "Multiple mutations" }
{ name: "Relationships" }
]
}
) {
title
chapters {
items {
name
}
}
}
}
Tato funkce je podrobně zdokumentovaná v průvodci více mutací.
Další informace najdete v tématu azure/data-api-builder – Vícenásobné mutace v GraphQL.
Vylepšení stránkování
DAB teď má paginationOptions
konfigurační vlastnost pro úpravu různých charakteristik integrované podpory stránkování. Mezi dílčí vlastnosti patří:
Výchozí hodnota | Description | |
---|---|---|
default-page-size |
100 | Velikost stránky, pokud je požadavek proveden bez zadané velikosti stránky. |
max-page-size |
100 000 | Velikost stránky, pokud je žádost podána se zadaným parametrem -1 velikost stránky. |
Další informace najdete v tématu azure/data-api-builder – Přidání limitů stránkování.
Stav
V dřívějších verzích DAB by rozhraní API vracelo stavovou zprávu healthy
řetězce v kořenovém koncovém bodu (/
). Nástroj teď vrátí objekt JSON obsahující stav, verzi a název aplikace označující, jestli je dab hostovaný, nebo verze opensourcového softwaru (OSS).
Například verze 0.12.0
image kontejneru OSS by ve výchozím nastavení vrátila tuto stavovou zprávu:
{
"status": "Healthy",
"version": "0.12.0",
"app-name": "dab_oss_0.12.0"
}
Další informace najdete v tématu azure/data-api-builder – Vylepšená metadata koncového bodu stavu.
Podpora více databází REST
V rozhraní REST API se teď podporuje více databází (nebo zdrojů dat). Název databáze se určuje na základě každé entity.
Další informace najdete v tématu azure/data-api-builder – podpora více databází v REST.
Vylepšení služby Azure Cosmos DB for NoSQL
Stávající podpora služby Azure Cosmos DB for NoSQL v DAB obsahuje několik vylepšení.
Podpora operací oprav
Operace oprav služby Azure Cosmos DB se teď podporují pomocí patch<entity-name>
mutací.
Předpokládejme například, že existuje malý kontejner s různými položkami autora rozdělenými do oddílů .publisher
Teď předpokládejme, že kontejner obsahuje tuto položku a schéma:
{
"id": "04511cbc-459d-4e39-b957-363f26771fc0",
"firstName": "Jacob",
"lastName": "Hancock",
"publisher": "Contoso Books"
}
type Author @model {
id: ID!
firstName: String!
middleName: String
lastName: String!
publisher: String!
}
Pokud chcete provést opravu pomocí GraphQL, použijte patchAuthor
mutaci určující jedinečný identifikátor i klíč oddílu:
mutation {
patchAuthor(
item: {
middleName: "A."
}
id: "04511cbc-459d-4e39-b957-363f26771fc0"
_partitionKeyValue: "Contoso Books"
) {
middleName
}
}
Další informace najdete v tématu azure/data-api-builder – podpora oprav.
Zabezpečení na úrovni položek
Azure Cosmos DB for NoSQL teď podporuje zabezpečení na úrovni položek (zásady databáze). Vyhodnocením výrazu zásad databáze se určí, k jakým položkám má aktuální role přístup.
Tato definice role by například definovala novou roli s názvem scoped-reader
, která může číst jenom položky, u ownerId
kterých je ekvivalentní existující UserId
roli z objektu zprostředkovatele @claims
identity.
{
"<entity-name>": {
"permissions": [
{
"role": "scoped-reader",
"actions": [
{
"action": "read",
"policy": {
"database": "@item.ownerId eq @claims.UserId"
}
}
]
}
]
}
}
Další informace najdete v tématu azure/data-api-builder – Podpora ověřování na úrovni položek pomocí zásad databáze.
Podpora mezipaměti v paměti
Aktualizace existujícího dotazovacího stroje Azure Cosmos DB for NoSQL tak, aby používal mezipaměť v paměti služby Azure Cosmos DB.
Další informace najdete v tématu azure/data-api-builder – podpora mezipaměti v paměti.
Vylepšení PostgreSQL
Stávající podpora PostgreSQL v DAB je vylepšená.
Zřetězení názvu aplikace s připojovací řetězec
DAB teď doplňuje připojovací řetězec PostgreSQL názvem aplikace DAB. Nástroj zkontroluje, jestli název aplikace už v připojovací řetězec existuje, a buď:
- Přidá nový název aplikace DAB, pokud neexistuje nebo neexistuje.
- Přidá název aplikace DAB za existující název aplikace s oddělovačem
,
.
Další informace najdete v tématu azure/data-api-builder – Přidání názvu aplikace pro připojení PostgreSQL.