Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
PLATÍ PRO: Vývojář | Základní | Základní v2 | Standardní | Standardní v2 | Premium | Premium v2
Pomocí řešení WebSocket API služby Azure API Management můžou vydavatelé rozhraní API rychle přidat rozhraní WEBSocket API ve službě API Management pomocí webu Azure Portal, Azure CLI, Azure PowerShellu a dalších nástrojů Azure.
Rozhraní WebSocket API lze zabezpečit použitím zásad řízení přístupu API Management při počáteční operaci handshake. Rozhraní API protokolu WebSocket můžete také otestovat pomocí testovacích konzol rozhraní API na webu Azure Portal i na portálu pro vývojáře. Služba API Management na základě existujících možností pozorovatelnosti poskytuje metriky a protokoly pro monitorování a řešení potíží s rozhraními API protokolu WebSocket.
V tomto článku se naučíte:
- Seznamte se s tokem průchodu protokolu WebSocket.
- Přidejte do instance služby API Management rozhraní API WebSocket.
- Otestujte rozhraní API protokolu WebSocket.
- Prohlédněte si metriky a protokoly pro rozhraní WebSocket API.
- Přečtěte si o omezeních rozhraní WEBSocket API.
Požadavky
- Vytvořte instanci API Management
- Rozhraní API protokolu WebSocket
- Azure CLI
Průchod protokolu WebSocket
API Management podporuje předávání Protokolu WebSocket.
Během průchodu protokolu WebSocket vytvoří klientská aplikace připojení WebSocket s bránou API Management, která pak vytvoří připojení s odpovídajícími back-endovými službami. Služba API Management pak zprostředkovává zprávy mezi klientem a serverem prostřednictvím WebSocket.
- Klientská aplikace odešle bráně požadavek WebSocket handshake, čímž vyvolá operaci onHandshake.
- Brána API Management používá nakonfigurované zásady a odesílá požadavky metody handshake protokolu WebSocket do odpovídající back-endové služby.
- Back-endová služba upgraduje připojení na WebSocket.
- Brána aktualizuje odpovídající připojení na WebSocket.
- Po navázání páru připojení zprostředkuje služba API Management zprávy mezi klientskou aplikací a back-endovou službou.
- Klientská aplikace odešle bráně zprávu.
- Brána předá zprávu službě zázemí.
- Back-endová služba odešle bráně zprávu.
- Brána předá zprávu klientské aplikaci.
- Když se obě strany odpojí, služba API Management ukončí odpovídající připojení.
Poznámka:
Připojení typu klient-back-end se skládají z mapování 1:1. Stejnou relaci Protokolu WebSocket nelze distribuovat napříč několika back-endy.
onHandshake – operace
Podle protokolu WebSocket, když se klientská aplikace pokusí navázat připojení WebSocket s backend službou, nejprve odešle žádost o navázání spojení.
Každé rozhraní API protokolu WebSocket ve službě API Management má operaci onHandshake . onHandshake je neměnná, neodstranitelná, automaticky vytvořená systémová operace. Operace onHandshake umožňuje vydavatelům rozhraní API zachytit tyto požadavky metodou handshake a použít na ně zásady služby API Management.
Přidání rozhraní WEBSocket API
Na portálu Azure přejděte k vaší instanci služby API Management.
V nabídce bočního panelu vyberte rozhraní API>+ Přidat rozhraní API.
V části Definovat nové rozhraní API vyberte dlaždici WebSocket .
V dialogovém okně vyberte Úplné a vyplňte požadovaná pole formuláře.
Pole Popis Zobrazovaný název Zobrazovaný název rozhraní API protokolu WebSocket Název Nezpracovaný název rozhraní WebSocket API Při zadávání zobrazovaného názvu se automaticky vyplní. WebSocket URL adresa Základní adresa URL s názvem webového socketu. Příklad: ws://example.com/your-socket-name Schéma URL Přijměte výchozí hodnoty. Přípona adresy URL rozhraní API Přidejte příponu adresy URL pro identifikaci tohoto konkrétního rozhraní API v této instanci platformy API Management. Musí být jedinečný v této instanci služby API Management. Produkty Přidružte rozhraní WebSocket API k produktu k jeho publikování. Brány Přidružte rozhraní WebSocket API k existujícím branám. Brány samohostované jsou dostupné jenom na úrovních Developer a Premium. Vyberte Vytvořit.
Testování rozhraní WEBSocket API
Přejděte k rozhraní WebSocket API.
V rozhraní API WebSocket vyberte operaci onHandshake.
Vyberte kartu Test pro přístup ke konzole test.
Volitelně můžete zadat parametry řetězce dotazu požadované pro metodu handshake protokolu WebSocket.
Vyberte Připojit.
Zobrazení stavu připojení ve výstupu
Zadejte hodnotu do datového pole.
Vyberte Odeslat.
Zobrazení přijatých zpráv ve výstupu
Opakujte předchozí kroky k otestování různých datových částí.
Po dokončení testování vyberte Odpojit.
Zobrazení metrik a protokolů
Použijte standardní funkce pro správu API a Azure Monitor k sledování WebSocket API.
- Zobrazení metrik rozhraní API v Azure Monitor
- Volitelně můžete povolit nastavení diagnostiky ke shromažďování a zobrazení protokolů brány služby API Management, mezi které patří operace rozhraní API WebSocket nebo protokoly připojení WebSocket.
Například následující snímek obrazovky ukazuje nedávné odpovědi rozhraní WebSocket API s kódem 101 z tabulky ApiManagementGatewayLogs . Tyto výsledky označují úspěšné přepnutí požadavků z protokolu TCP na protokol WebSocket.
Omezení
Toto jsou aktuální omezení podpory protokolu WebSocket ve službě API Management:
- Rozhraní API protokolu WebSocket zatím nejsou podporována ve vrstvě spotřeby.
- Rozhraní WebSocket API podporují následující platné typy bufferů pro zprávy: Close, BinaryFragment, BinaryMessage, UTF8Fragment a UTF8Message.
-
V současné době zásady set-header nepodporují změnu určitých dobře známých hlaviček, včetně
Hosthlaviček, v požadavcích onHandshake. - Během handshake procesu protokolu TLS s WebSocket backendem API Management ověří, zda je certifikát serveru důvěryhodný a zda se jeho název subjektu shoduje s názvem hostitele. Pomocí rozhraní HTTP API služba API ověří, že certifikát je důvěryhodný, ale neověřuje, že název hostitele a předmět odpovídají.
- Připojení WebSocket nelze distribuovat ani vyrovnávat zatížení mezi více backendy, protože jakmile se vytvoří, každé připojení je udržováno v poměru 1:1 mezi klientem a backendem.
Omezení připojení WebSocket najdete v tématu Omezení služby API Management.
Nepodporované zásady
Následující zásady nejsou podporovány a nelze je použít pro operaci onHandshake:
- Simulovaná odpověď
- Získat z mezipaměti
- Uložit do mezipaměti
- Povolit volání mezi doménami
- CORS
- JSONP
- Nastavení metody požadavku
- Nastavit tělo
- Convert XML to JSON (Převést XML na JSON)
- Convert JSON to XML (Převést JSON na XML)
- Transformace XML pomocí XSLT
- Ověření obsahu
- Ověření parametrů
- Ověření hlaviček
- Ověřit stavový kód
Poznámka:
Pokud jste zásady použili na vyšších úrovních (například globální nebo produktové) a rozhraní API WebSocket je díky těmto zásadám zdědí, jsou při běhu přeskočeny.
Související obsah
- Omezení importu rozhraní API
- Importujte specifikaci OpenAPI
- Importujte API SOAP
- Import rozhraní SOAP API a jeho převod na rozhraní REST
- Importujte API služby App Service
- Importujte API aplikace kontejneru
- Importujte API WebSocket
- Import GraphQL API
- Import schématu GraphQL a nastavení překladačů polí
- Importujte rozhraní API funkční aplikace
- Import rozhraní API aplikace logiky
- Importujte službu Service Fabric
- Import Microsoft Foundry API
- Importujte rozhraní API Azure OpenAI
- Import rozhraní LLM API
- Importujte OData API
- Exportujte REST API jako MCP server
- Zveřejnění existujícího serveru MCP
- Import rozhraní API agenta A2A
- Import metadata SAP OData
- Importujte rozhraní API gRPC
- Úprava rozhraní API