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 GraphQL segítségével a JavaScript-alkalmazások egyetlen kéréssel pontosan lekérhetik a szükséges adatokat. Ez a cikk bemutatja, hogy mi a GraphQL, miért érdemes használni, és hogy az Azure-szolgáltatások hogyan segíthetnek a GraphQL-alkalmazások minimális erőfeszítéssel történő összeállításában. Akár meglévő GraphQL-alkalmazást migrál, akár újat hoz létre, az Azure eszközöket és szolgáltatásokat biztosít a folyamat egyszerűsítéséhez.
Mi az a GraphQL?
A GraphQL egy modern módja annak, hogy a webalkalmazás kommunikáljon a kiszolgálókkal és az adatbázisokkal. Gondoljon rá úgy, mint egy intelligensebb módszer arra, hogy pontosan a szükséges információkat kérje:
- Ez olyan, mint egy egyéni étkezés megrendelése a rögzített menü elfogadása helyett – pontosan azt kérdezi, amit szeretne
- Jól működik JavaScript-alkalmazásokkal, például React, Vue vagy Angular
- Ez felgyorsíthatja és egyszerűbbé teheti a webalkalmazások létrehozását
Ahelyett, hogy több kérést küldenél a különböző kiszolgálóvégpontokra (például a hagyományos REST API-khoz – a legtöbb webszolgáltatás szokásos kommunikációjához), a GraphQL lehetővé teszi, hogy egyetlen pontos kérést küldjön az összes szükséges adat lekéréséhez.
Miért használnám a GraphQL-t a webalkalmazásomban?
A GraphQL három fő módon teszi jobbá JavaScript-alkalmazásait:
Pontosan azt kapja meg, amire szüksége van: Az alkalmazás csak azokat az adatokat kérheti le, amelyekre most szüksége van – nem több, nem kevesebb. Ez olyan, mintha egy büfébe mennél, és csak azt vennéd el, amit meg fogsz enni, ahelyett, hogy egy óriási rögzített menüt kapnál, ahol a legtöbb veszendőbe megy. Ez felgyorsítja az alkalmazást, mivel kevesebb adatot tölt le.
Egy kérés a sok helyett: Több helyről szeretne információt? AHelyett, hogy 5 különböző kérést küldenél 5 különböző végpontra, a GraphQL lehetővé teszi, hogy csak egy kérést intézz mindenhez. Ez olyan, mintha egy személy helyetted összegyűjti az összes bevásárlást, ahelyett, hogy öt különböző üzletbe járnál.
Kevesebb hiba a jobb eszközökkel: A GraphQL olyan eszközökkel rendelkezik, amelyek segítenek a hibák elhárításában a kódolás során, nem pedig az alkalmazás futtatásakor. Ez olyan, mintha helyesírás-ellenőrzést végeznél, amely beírás közben működik ahelyett, hogy elírásokat fedeznél fel a dokumentum közzététele után.
Népszerű JavaScript-eszközök a GraphQL-hez
A GraphQL- és JavaScript-alapú buildek készítésekor valószínűleg az alábbi népszerű eszközök egyikét fogja használni:
- Apolló ügyfél: A leggyakrabban használt GraphQL-ügyfél, amely a React, a Vue, az Angular és az egyszerű JavaScript használatával működik.
- URQL: Egy könnyű alternatíva jó teljesítménnyel.
- Relay: A Facebook hozta létre (aki a GraphQL-t is létrehozta), a legjobb a nagy React-alkalmazásokhoz.
Azure-szolgáltatások GraphQL-alkalmazásokhoz
Válassza ki a megközelítést az adott forgatókönyv alapján:
Ha szeretnéd... | Akkor ezt kellene tenned... | Ezen Azure-szolgáltatások használata |
---|---|---|
Meglévő GraphQL-alkalmazás használata az Azure-ban | Az alkalmazás üzembe helyezése a kód módosítása nélkül | Azure App Service vagy Azure Container Apps |
GraphQL hozzáadása a meglévő adatokhoz | GraphQL-végpontok létrehozása az adatokhoz minimális kódolással | Adat API Építő |
GraphQL API-réteg létrehozása | Egységes GraphQL-felület létrehozása meglévő API-kon keresztül | Az Azure API Management GraphQL általi átalakítással |
GraphQL-alkalmazások üzemeltetése az Azure-on
A létrehozott alkalmazás típusától függően néhány jó lehetőség közül választhat:
App Service: Ez olyan, mint egy hagyományos web hosting szolgáltatás, de extra funkciókkal. A legtöbb olyan JavaScript-alkalmazáshoz kiválóan alkalmas, amelyeknek kiszolgálóra van szükségük.
Tárolóalkalmazások: Ha az alkalmazás tárolókba van csomagolva (például Docker), ez a szolgáltatás megkönnyíti a futtatást és a skálázást.
Adattárolás GraphQL-alkalmazásokhoz
A GraphQL-nek csatlakoznia kell az adatokhoz. Az Azure többféleképpen is megteheti ezt:
Alakítsa az adatbázist GraphQL API-vá: Az "Adat API builder" eszköz automatikusan létrehozhat egy GraphQL-végpontot (egy URL-címet, ahol az alkalmazás GraphQL-kéréseket küldhet) a meglévő adatbázisból – nincs szükség kódolásra!
Az adatok tárolása: Az Azure különböző igényeknek megfelelő adatbázisokat kínál:
- SQL Database: Hagyományos táblaalapú adatokhoz
- Cosmos DB: Rugalmas, méretezhető adattároláshoz merev sémák nélkül
GraphQL-alkalmazások biztonságossá tétele
- Felhasználói bejelentkezés és biztonság: Az Azure Identity platformja segít bejelentkezési funkciókat hozzáadni az alkalmazáshoz, hogy csak a megfelelő személyek férhessenek hozzá a GraphQL-adatokhoz.
- Szerepköralapú hozzáférés: Pontosan szabályozhatja, hogy mely felhasználók kérdezhetnek le vagy módosíthatnak adatokat a GraphQL-végpontokon keresztül.
- API-védelem: Sebességkorlátozás és monitorozás hozzáadása a GraphQL API-kkal való visszaélés megakadályozása érdekében.
GraphQL API-k létrehozása a meglévő adatokhoz
Már rendelkezik adatokkal az Azure-ban, és szeretné elérni őket a GraphQL-lel? Ennek egyszerű módjai vannak:
API Management: Ez a szolgáltatás létrehozhat egy GraphQL-réteget a meglévő API-k vagy adatforrások előtt. Ez olyan, mintha GraphQL-fordítót adnék hozzá olyan rendszerekhez, amelyek nem beszélik natív módon a GraphQL-t.
Data API Builder: Ez az eszköz automatikusan létrehoz GraphQL-végpontokat az adatbázisokból. Ez a leggyorsabb módja a GraphQL hozzáadásának a meglévő adatokhoz – csak mutasson rá az adatbázisra, és elvégzi a munkát.
Egy egyszerű példa: GraphQL API létrehozása termékadatbázishoz
A folyamat működése egyszerű:
- Rendelkezik egy termékinformációkat tartalmazó adatbázissal (nevek, árak, leírások)
- Az adatok API Builderét beállítja az adatbázisához való csatlakozáshoz.
- A Data API Builder automatikusan létrehoz egy GraphQL-végpontot
- A JavaScript-alkalmazás mostantól az alábbihoz hasonló GraphQL-lekérdezéseket végezhet:
{
products(where: { price_lt: 50 }) {
name
price
description
}
}
Ez a lekérdezés az összes terméket 50 usd alatt jeleníti meg, csak a nevüket, az árakat és a leírásokat.
Az első lépésekhez szükséges erőforrások
Ha többet szeretne megtudni, vagy elkezdi a GraphQL használatát az Azure-ban, íme néhány hasznos forrás:
- Bevezetés a GraphQL használatába kezdőknek
- A Data API Builder használatának első lépései
- JavaScript GraphQL-példák az Azure-ban
Következő lépések
- A Data API Builder telepítése
- Azure Konténer Alkalmazások
- Azure API Management – API-k létrehozása és kezelése
- Azure App Service
- Azure SQL Database – Strukturált adatok tárolása
- Azure Cosmos DB – Rugalmas, strukturálatlan adatok tárolása