Megosztás a következőn keresztül:


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

WebSocket átengedés

Az API Management támogatja a WebSocket átengedését.

A WebSocket átengedési folyamatának vizuális illusztrációja

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.

  1. 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.
  2. Az APIM-átjáró WebSocket-kézfogási kérelmet küld a megfelelő háttérszolgáltatásnak.
  3. A háttérszolgáltatás frissíti a WebSocket-kapcsolatot.
  4. Az APIM-átjáró frissíti a WebSockethez tartozó kapcsolatot.
  5. 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.
  6. Az ügyfélalkalmazás üzenetet küld az APIM-átjárónak.
  7. Az APIM-átjáró továbbítja az üzenetet a háttérszolgáltatásnak.
  8. A háttérszolgáltatás üzenetet küld az APIM-átjárónak.
  9. Az APIM-átjáró továbbítja az üzenetet az ügyfélalkalmazásnak.
  10. 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.

onHandshake screen example

WebSocket API hozzáadása

    1. Az Azure Portalon keresse meg az API Management-példányt.
  1. A bal oldali menüben válassza az API-k>+ API hozzáadása lehetőséget.

  2. Az Új API definiálása területen válassza a WebSocket lehetőséget.

  3. 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.
  4. Kattintson a Létrehozás gombra.

A WebSocket API tesztelése

  1. Lépjen a WebSocket API-hoz.

  2. A WebSocket API-n belül válassza ki az onHandshake műveletet.

  3. A Tesztkonzol eléréséhez válassza a Teszt fület.

  4. Igény szerint adja meg a WebSocket kézfogáshoz szükséges lekérdezési sztringparamétereket.

    példa tesztelési API-ra

  5. Kattintson a Connect (Csatlakozás) gombra.

  6. A kapcsolat állapotának megtekintése a Kimenetben.

  7. Adja meg az értéket a Hasznos adatok mezőben.

  8. Kattintson a Küldés gombra.

  9. Fogadott üzenetek megtekintése a Kimenetben.

  10. Ismételje meg az előző lépéseket a különböző hasznos adatok teszteléséhez.

  11. 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.

WebSocket API-kérések lekérdezési naplói

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.

Következő lépések