WebSocket API importálása
A KÖVETKEZŐKRE VONATKOZIK: Fejlesztő | Alapszintű | Alapszintű v2 | Standard | Standard v2 | Prémium
Az API Management WebSocket API-megoldásával az API-közzétevők gyorsan hozzáadhatnak egy WebSocket API-t az API Managementben az Azure Portalon, az Azure CLI-vel, az Azure PowerShell-lel és más Azure-eszközökkel.
Feljegyzés
Ez a funkció jelenleg nem érhető el a munkaterületeken.
A WebSocket API-k védelmét meglévő hozzáférés-vezérlési szabályzatok, például JWT-érvényesítési szabályzatok alkalmazásával teheti biztonságossá. A WebSocket API-kat az Azure Portal és a fejlesztői portál API-tesztkonzoljaival is tesztelheti. A meglévő megfigyelhetőségi képességekre építve az API Management metrikákat és naplókat biztosít a WebSocket API-k monitorozásához és hibaelhárításához.
Ebben a cikkben:
- A Websocket átengedési folyamatának ismertetése.
- Adjon hozzá egy WebSocket API-t az API Management-példányhoz.
- Tesztelje a WebSocket API-t.
- Tekintse meg a WebSocket API metrikáit és naplóit.
- Ismerje meg a WebSocket API korlátait.
Előfeltételek
- Egy meglévő API Management-példány. Hozzon létre egyet, ha még nem tette meg.
- A WebSocket API.
- Azure CLI
WebSocket átengedés
Az API Management támogatja a WebSocket átengedését.
A WebSocket átengedése során az ügyfélalkalmazás létrehoz egy WebSocket-kapcsolatot az API Management Gatewayrel, majd kapcsolatot létesít a megfelelő háttérszolgáltatásokkal. Az API Management ezután a WebSocket ügyfél-kiszolgáló üzeneteket proxyz.
- Az ügyfélalkalmazás egy WebSocket kézfogási kérést küld az APIM-átjárónak, és invokálva az OnHandshake műveletet.
- Az APIM-átjáró WebSocket-kézfogási kérelmet küld a megfelelő háttérszolgáltatásnak.
- A háttérszolgáltatás frissíti a WebSocket-kapcsolatot.
- Az APIM-átjáró frissíti a WebSockethez tartozó kapcsolatot.
- A kapcsolatpár létrehozása után az APIM oda-vissza közvetíti az üzeneteket az ügyfélalkalmazás és a háttérszolgáltatás között.
- Az ügyfélalkalmazás üzenetet küld az APIM-átjárónak.
- Az APIM-átjáró továbbítja az üzenetet a háttérszolgáltatásnak.
- A háttérszolgáltatás üzenetet küld az APIM-átjárónak.
- Az APIM-átjáró továbbítja az üzenetet az ügyfélalkalmazásnak.
- Ha mindkét oldal megszakad, az APIM megszakítja a megfelelő kapcsolatot.
Feljegyzés
Az ügyféloldali és a háttéroldali kapcsolatok egy-az-egyhez leképezésből állnak.
onHandshake művelet
A WebSocket protokoll szerint, amikor egy ügyfélalkalmazás megpróbál WebSocket-kapcsolatot létesíteni egy háttérszolgáltatással, először egy nyitó kézfogási kérést küld. Az API Management minden WebSocket API-ja onHandshake művelettel rendelkezik. Az onHandshake egy nem módosítható, eltávolíthatatlan, automatikusan létrehozott rendszerművelet. Az onHandshake művelet lehetővé teszi, hogy az API-közzétevők elfogják ezeket a kézfogási kéréseket, és API Management-szabályzatokat alkalmazzanak rájuk.
WebSocket API hozzáadása
-
- Az Azure Portalon keresse meg az API Management-példányt.
A bal oldali menüben válassza az API-k>+ API hozzáadása lehetőséget.
Az Új API definiálása területen válassza a WebSocket lehetőséget.
A párbeszédpanelen válassza a Teljes elemet, és töltse ki a szükséges űrlapmezőket.
Mező Leírás Megjelenített név Az a név, amellyel a WebSocket API megjelenik. Név A WebSocket API nyers neve. A megjelenítendő név beírása közben automatikusan feltöltődik. WebSocket URL-címe Az alap URL-cím a websocket nevével. Például: ws://example.com/your-socket-name URL-séma Fogadja el az alapértelmezett beállítást API URL-címének utótagja Adjon hozzá egy URL-utótagot az adott API azonosításához ebben az API Management-példányban. Egyedinek kell lennie az APIM-példányon belül. Termékek A WebSocket API társítása egy termékkel a közzétételhez. Átjárók A WebSocket API társítása meglévő átjárókkal. Kattintson a Létrehozás gombra.
A WebSocket API tesztelése
Lépjen a WebSocket API-hoz.
A WebSocket API-n belül válassza ki az onHandshake műveletet.
A Tesztkonzol eléréséhez válassza a Teszt fület.
Igény szerint adja meg a WebSocket kézfogáshoz szükséges lekérdezési sztringparamétereket.
Kattintson a Connect (Csatlakozás) gombra.
A kapcsolat állapotának megtekintése a Kimenetben.
Adja meg az értéket a Hasznos adatok mezőben.
Kattintson a Küldés gombra.
Fogadott üzenetek megtekintése a Kimenetben.
Ismételje meg az előző lépéseket a különböző hasznos adatok teszteléséhez.
Ha a tesztelés befejeződött, válassza a Leválasztás lehetőséget.
Metrikák és naplók megtekintése
A WebSocket API-k monitorozásához használjon szabványos API Management- és Azure Monitor-funkciókat:
- API-metrikák megtekintése az Azure Monitorban
- Opcionálisan engedélyezheti a diagnosztikai beállításokat az API Management-átjáró naplóinak gyűjtéséhez és megtekintéséhez, amelyek a WebSocket API-műveleteket is magukban foglalják
Az alábbi képernyőképen például a WebSocket API legutóbbi válaszai láthatók az ApiManagementGatewayLogs tábla kódjával101
. Ezek az eredmények azt jelzik, hogy a kérések sikeresen átváltottak a TCP-ről a WebSocket protokollra.
Korlátozások
Az alábbiakban az API Management WebSocket-támogatásának jelenlegi korlátozásait találja:
- A WebSocket API-k még nem támogatottak a használatszinten.
- A WebSocket API-k a következő érvényes puffertípusokat támogatják az üzenetekhez: Close, BinaryFragment, BinaryMessage, UTF8Fragment és UTF8Message.
- A set-header szabályzat jelenleg nem támogatja bizonyos jól ismert fejlécek, köztük
Host
a fejlécek módosítását az OnHandshake-kérelmekben. - A WebSocket háttérrendszerrel rendelkező TLS-kézfogás során az API Management ellenőrzi, hogy a kiszolgálótanúsítvány megbízható-e, és hogy a tulajdonos neve megegyezik-e a gazdagép nevével. HTTP API-k esetén az API Management ellenőrzi, hogy a tanúsítvány megbízható-e, de nem ellenőrzi, hogy a gazdagépnév és a tulajdonos egyezik-e.
A WebSocket kapcsolati korlátait az API Management korlátai között tekintheti meg.
Nem támogatott szabályzatok
A következő szabályzatok nem támogatottak, és nem alkalmazhatók az onHandshake műveletre:
- Mock válasz
- Get from cache
- Tároló gyorsítótárazásához
- Tartományközi hívások engedélyezése
- CORS
- JSONP
- Kérelemmetódus beállítása
- Set body (Törzs beállítása)
- Convert XML to JSON (XML–JSON átalakítás)
- Convert JSON to XML (JSON–XML átalakítás)
- XML átalakítása XSLT használatával
- Tartalom ellenőrzése
- Paraméterek érvényesítése
- Fejlécek ellenőrzése
- Állapotkód ellenőrzése
Feljegyzés
Ha a szabályzatokat magasabb hatókörökben (például globális vagy termék) alkalmazta, és egy WebSocket API örökli őket a szabályzaton keresztül, azokat futásidőben kihagyja a rendszer.
Kapcsolódó témakörök
- API-importálási korlátozások
- OpenAPI-specifikáció importálása
- SOAP API importálása
- SOAP API importálása és konvertálása REST-té
- App Service API importálása
- Container App API importálása
- WebSocket API importálása
- GraphQL API-k importálása
- GraphQL-sémák importálása és mezőfeloldók beállítása
- Azure-függvényalkalmazás importálása
- Azure Logic App-alkalmazás importálása
- Service Fabric-szolgáltatás importálása
- Azure OpenAI API importálása
- OData API importálása
- SAP OData-metaadatok importálása
- GRPC API importálása
- API szerkesztése