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í api WebSocket API služby API Management můžou vydavatelé rozhraní API rychle přidat rozhraní API WebSocket ve službě API Management prostřednictvím portálu Azure, Azure CLI, Azure PowerShell a dalších nástrojů pro 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 portálu Azure 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 provedete následující:
- 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
- Existující instance služby API Management. Vytvořte ho, pokud jste to ještě neudělali.
- 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 do brány požadavek handshake protokolu WebSocket, který 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 vlevo vyberte rozhraní API> + Přidat rozhraní API.
V části Definovat nové rozhraní API vyberte WebSocket.
V dialogovém okně vyberte Úplné a vyplňte požadovaná pole formuláře.
Pole Popis Zobrazovaný název Název, podle kterého se zobrazí 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í hodnotu. 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. Klikněte na 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.
Klepněte na tlačítko Připojit.
Zobrazení stavu připojení ve výstupu
Zadejte hodnotu do datového pole.
Klepněte na tlačítko 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, které zahrnují 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 back-endy, protože po vytvoření se každé připojení udržuje mezi klientem a back-endem jako jedna ku jedné (1:1).
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 uplatnili ve vyšších úrovních (například globální nebo produktové) a jsou zděděny rozhraním API WebSocket prostřednictvím mechanismu zásad, jsou při spuštění 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