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: Azure Logic Apps (Consumption + Standard)
Tato příručka ukazuje, jak vytvořit pracovní postup aplikace logiky, který může přijímat a zpracovávat příchozí požadavek HTTPS z jiné služby pomocí integrované aktivační události Požadavek . Když váš pracovní postup používá tento trigger, může pracovní postup reagovat na volání HTTPS pomocí integrované akce Odpověď .
Poznámka:
Akce Odpověď funguje jenom v případech, kdy použijete trigger požadavku .
Pracovní postup může například provádět následující úlohy, když použijete akci Trigger požadavku a Odpověď :
Přijímat a odpovídat na požadavek HTTPS na data v místní databázi.
Přijímat a odpovídat na požadavek HTTPS odeslaný z jiného pracovního postupu aplikace logiky
Aktivuje spuštění pracovního postupu, když dojde k události externího webhooku.
Pokud chcete pracovní postup spustit odesláním odchozího nebo odchozího požadavku, použijte předdefinovaný trigger HTTP nebo integrovanou akci HTTP.
Požadavky
- Účet a předplatné Azure. Pokud předplatné nemáte, můžete si zaregistrovat bezplatný účet Azure.
Prostředek aplikace Logic App s workflowem, kde chcete přijímat příchozí požadavek HTTPS.
Pokud chcete spustit pracovní postup spouštěčem požadavku, musíte mít prázdný pracovní postup. Pokud chcete použít akci Odpověď , musí váš pracovní postup začínat triggerem požadavku .
Pokud nemáte prostředek a pracovní postup aplikace logiky, vytvořte je teď podle kroků pro aplikaci logiky, kterou chcete použít:
Nainstalujte nebo použijte nástroj, který může odesílat požadavky HTTP k otestování vašeho řešení, například:
- Visual Studio Code s rozšířením z Webu Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge – nástroj konzoly sítě
- Bruno
- kudrna
Upozornění
V situacích, kdy máte citlivá data, jako jsou přihlašovací údaje, tajné kódy, přístupové tokeny, klíče rozhraní API a další podobné informace, nezapomeňte použít nástroj, který chrání vaše data pomocí nezbytných funkcí zabezpečení. Nástroj by měl fungovat offline nebo místně a nevyžaduje přihlášení k online účtu nebo synchronizaci dat do cloudu. Při použití nástroje s těmito charakteristikami snížíte riziko zveřejnění citlivých dat veřejnosti.
Přidání triggeru požadavku
Trigger požadavku vytvoří ručně volatelný koncový bod, který zpracovává pouze příchozí požadavky přes HTTPS. Když volající odešle požadavek na tento koncový bod, aktivuje se trigger požadavku a spustí pracovní postup. Informace o volání tohoto triggeru najdete v tématu Volání, trigger nebo vnoření pracovních postupů s koncovými body HTTPS v Azure Logic Apps.
Na webu Azure Portal otevřete prostředek aplikace logiky Consumption.
V nabídce bočního panelu v části Vývojové nástroje vyberte návrháře a otevřete prázdný pracovní postup.
Přidejte předdefinovaný trigger požadavku s názvem Při přijetí požadavku HTTP do pracovního postupu podle obecných kroků pro přidání triggeru.
Po zobrazení informačního pole aktivační události zadejte následující informace:
Název vlastnosti Název vlastnosti JSON Požadováno Popis HTTP URL {žádné} Ano Adresa URL koncového bodu vygenerovaná po uložení pracovního postupu a slouží k odeslání požadavku, který aktivuje váš pracovní postup. Schéma JSON textu požadavku schemaNe Schéma JSON popisující vlastnosti a hodnoty v textu příchozího požadavku. Návrhář používá toto schéma ke generování tokenů pro vlastnosti v požadavku. Tímto způsobem může pracovní postup parsovat, využívat a předávat výstupy z triggeru požadavku do pracovního postupu.
Pokud schéma JSON nemáte, můžete schéma vygenerovat z ukázkové datové části pomocí ukázkové datové části k vygenerování funkce schématu pomocí ukázkové datové části.Následující příklad ukazuje ukázkové schéma JSON:
Následující příklad ukazuje kompletní ukázkové schéma JSON:
{ "type": "object", "properties": { "account": { "type": "object", "properties": { "name": { "type": "string" }, "ID": { "type": "string" }, "address": { "type": "object", "properties": { "number": { "type": "string" }, "street": { "type": "string" }, "city": { "type": "string" }, "state": { "type": "string" }, "country": { "type": "string" }, "postalCode": { "type": "string" } } } } } } }Když zadáte schéma JSON, návrhář může zobrazit připomenutí, že do požadavku zahrne hlavičku
Content-Typea nastaví tuto hodnotu hlavičky naapplication/json. Další informace naleznete v tématu Zpracování typů obsahu.Následující příklad ukazuje, jak se záhlaví
Content-Typezobrazuje ve formátu JSON:{ "Content-Type": "application/json" }Pokud chcete vygenerovat schéma JSON založené na očekávané datové části (data), můžete použít nástroj, jako je json-schema.org, nebo můžete postupovat takto:
V triggeru požadavku vyberte Použít ukázkovou datovou část k vygenerování schématu.
Zadejte ukázkovou datovou část a vyberte Hotovo.
Následující příklad ukazuje ukázkovou datovou část:
{ "account": { "name": "Contoso", "ID": "12345", "address": { "number": "1234", "street": "Anywhere Street", "city": "AnyTown", "state": "AnyState", "country": "USA", "postalCode": "11111" } } }
Pokud chcete zkontrolovat, jestli příchozí volání obsahuje text požadavku, který odpovídá zadanému schématu, postupujte takto:
Chcete-li vynutit příchozí zprávu, aby měla stejná přesná pole, která vaše schéma popisuje, přidejte ve schématu
requiredvlastnost a zadejte požadovaná pole.additionalPropertiesPřidejte vlastnost a nastavte hodnotu na false.Například následující schéma určuje, že příchozí zpráva musí mít
msgpole a ne žádná jiná pole:{ "properties": { "msg": { "type": "string" } }, "type": "object", "required": ["msg"], "additionalProperties": false }V návrháři vyberte spouštěč požadavku. V podokně informací, které se otevře, vyberte kartu Nastavení .
Rozbalte zpracování dat a nastavte ověřování schématu na Zapnuto.
Pokud tělo požadavku příchozího volání neodpovídá vašemu schématu, trigger vrátí chybu HTTP 400 Chybný požadavek .
V seznamu Metoda vyberte metodu, kterou trigger očekává pro zpracování příchozích požadavků.
Pokud pro trigger existují nějaké další parametry, otevřete seznam rozšířených parametrů a vyberte požadované parametry.
Až budete připraveni, uložte pracovní postup. Na panelu nástrojů návrháře vyberte Uložit.
Tento krok vygeneruje adresu URL, kterou můžete použít k odeslání požadavku, který aktivuje pracovní postup.
Pokud chcete zkopírovat vygenerovanou adresu URL, vyberte ikonu kopírování vedle adresy URL.
Poznámka:
Pokud chcete do identifikátoru URI zahrnout symbol hash nebo libra (#) při volání triggeru požadavku , použijte místo toho tuto zakódovanou verzi:
%25%23
Teď pokračujte v vytváření pracovního postupu přidáním další akce jako dalšího kroku. Na požadavek můžete například odpovědět přidáním akce Odpověď, kterou můžete použít k vrácení přizpůsobené odpovědi a která je popsaná dále v tomto článku.
Poznámka:
Váš pracovní postup uchovává příchozí požadavek otevřený jenom po omezenou dobu. Za předpokladu, že pracovní postup obsahuje také akci Odpovědi, pokud váš pracovní postup po vypršení této doby nevrátí odpověď volajícímu, vrátí pracovní postup stav 504 GATEWAY TIMEOUT volajícímu. Pokud váš pracovní postup neobsahuje akci Odpověď, pracovní postup okamžitě vrátí stav 202 ACCEPTED volajícímu.
Informace o zabezpečení, ověřování a šifrování příchozích volání do vašeho pracovního postupu, jako jsou tls (Transport Layer Security),OAuth s Microsoft Entra ID, sdílené přístupové podpisy (SAS), zveřejnění prostředku aplikace logiky ve službě Azure API Management nebo omezení IP adres, které pocházejí z příchozích volání, najdete v tématu Přístup pro příchozí volání triggerů založených na požadavcích.
Výstupy aktivační události
Následující tabulka uvádí výstupy z triggeru požadavku:
| Název vlastnosti JSON | Datový typ | Popis |
|---|---|---|
headers |
Objekt | Objekt JSON, který popisuje hlavičky z požadavku |
body |
Objekt | Objekt JSON, který popisuje základní obsah požadavku |
Přidání akce odpovědi
Když k příjmu příchozích požadavků použijete trigger požadavku , můžete odpověď modelovat a odeslat výsledky datové části zpět volajícímu pomocí integrované akce Odpověď , která funguje pouze s triggerem požadavku . Tato kombinace s triggerem požadavku a akcí Odpověď vytvoří vzor odpovědi požadavku. Kromě uvnitř pro každou smyčku a until smyčky a paralelní větve můžete přidat akci Odpověď kdekoli v pracovním postupu.
Důležité
Pokud akce odpovědi obsahuje následující hlavičky, Azure Logic Apps tyto hlavičky automaticky odebere ze zprávy vygenerované odpovědi, aniž by se zobrazilo upozornění nebo chyba. Azure Logic Apps tyto hlavičky neobsahuje, i když vám služba nezabrání v ukládání pracovních postupů, které mají akci Odpovědi s těmito hlavičkami.
Allow-
Content-*hlavičky s výjimkouContent-Disposition,Content-EncodingaContent-Typepokud používátePOSTaPUToperace, ale nejsou zahrnuty proGEToperace CookieExpiresLast-ModifiedSet-CookieTransfer-Encoding
Pokud máte v komplexním pracovním postupu s větvemi jednu nebo více akcí odpovědi, ujistěte se, že pracovní postup zpracovává alespoň jednu akci odpovědi během běhu. V opačném případě, pokud jsou všechny akce odpovědi vynechány, volající obdrží chybu 502 Chybná brána , i když se pracovní postup úspěšně dokončí.
V bezstavovém pracovním postupu aplikace logiky standardu se akce Odpovědi musí zobrazit jako poslední v pracovním postupu. Pokud se akce zobrazí kdekoli jinde, Azure Logic Apps tuto akci pořád nespustí, dokud se všechny ostatní akce nedokončí.
Na webu Azure Portal otevřete prostředek aplikace logiky Consumption.
V nabídce bočního panelu v části Vývojové nástroje vyberte návrháře a otevřete pracovní postup.
Tento ukázkový pracovní postup používá trigger požadavku přidaný v předchozí části.
Přidejte integrovanou akci Odpovědi do pracovního postupu podle obecných kroků pro přidání akce.
Do pole s informacemi o akci přidejte požadované hodnoty pro zprávu odpovědi.
Název vlastnosti Název vlastnosti JSON Požadováno Popis Stavový kód statusCodeAno Stavový kód, který se má vrátit v odpovědi Záhlaví headersNe Objekt JSON, který popisuje jedno nebo více hlaviček, které se mají zahrnout do odpovědi Text bodyNe Text odpovědi Když vyberete některá textová pole, zobrazí se možnosti otevření seznamu dynamického obsahu (ikona blesku) nebo editoru výrazů (ikona funkce). Když zvolíte seznam dynamického obsahu, můžete vybrat výstupy, které jsou k dispozici v předchozích krocích pracovního postupu. Pokud jste v triggeru požadavku zadali schéma, vlastnosti schématu se zobrazí také v seznamu dynamického obsahu a jsou k dispozici pro použití ve vašem pracovním postupu.
Například v poli Hlavičky použijte jako název klíče typ obsahu a nastavte hodnotu klíče na application/json , jak je uvedeno výše v tomto článku. V poli Text můžete otevřít seznam dynamického obsahu a vybrat výstup textu triggeru.
Pokud chcete zobrazit záhlaví ve formátu JSON, vyberte Přepnout do textového zobrazení.
Pokud pro akci existují nějaké další parametry, otevřete seznam rozšířených parametrů a vyberte požadované parametry.
Po dokončení uložte pracovní postup. Na panelu nástrojů návrháře vyberte Uložit.
Otestování pracovního postupu
Pokud chcete aktivovat pracovní postup, odešlete požadavek HTTP na adresu URL vygenerovanou pro trigger požadavku, včetně metody, kterou trigger požadavku očekává, pomocí nástroje požadavku HTTP a jeho pokynů.
Další informace o základní JSON definici spouštěče a o tom, jak volat tento spouštěč, najdete v těchto článcích: Typ spouštěče požadavku a volání, spuštění nebo vnoření pracovních postupů pomocí koncových bodů HTTP v Azure Logic Apps.
Zabezpečení a ověřování
V pracovním postupu standardní aplikace logiky, který začíná triggerem požadavku (ale ne triggerem webhooku), můžete použít zřízení Azure Functions k ověřování příchozích volání odeslaných do koncového bodu vytvořeného tímto triggerem pomocí spravované identity. Toto zřízení se také označuje jako Easy Auth. Další informace najdete v tématu Aktivace pracovních postupů ve standardních aplikacích logiky pomocí snadného ověřování.
Další informace o zabezpečení, autorizaci a šifrování příchozích volání do pracovního postupu aplikace logiky, jako je protokol TLS (Transport Layer Security),Microsoft Entra ID Open Authentication (Microsoft Entra ID OAuth), zveřejnění aplikace logiky pomocí služby Azure API Management nebo omezení IP adres, které pocházejí z příchozích volání, najdete v tématu Access pro příchozí volání triggerů založených na požadavcích.