Koncepty triggerů a vazeb Azure Functions.

V tomto článku se seznámíte s koncepty a možnostmi triggerů funkcí a vazeb na nejvyšší úrovni.

Aktivační události jsou tím, co způsobí spuštění funkce. Aktivační událost definuje způsob volání funkce a funkce musí mít právě jednu aktivační událost. Aktivační události obsahují související data, která se často poskytují jako datová část funkce.

Vazba na funkci je způsob deklarativního připojení jiného prostředku ke funkci; vazby mohou být propojeny jako vstupní vazby, výstupní vazby nebo obojí. Data z vazeb má funkce k dispozici jako parametry.

Můžete kombinovat a párovat různé vazby tak, aby odpovídaly vašim potřebám. Vazby jsou volitelné a funkce může mít jednu nebo více vstupních nebo výstupních vazeb.

Triggery a vazby umožňují vyhnout se zakódujeme přístupu k jiným službám. Vaše funkce přijímá data (například obsah zprávy fronty) v parametrech funkce. Vy posíláte data (například k vytvoření zprávy fronty) pomocí návratové hodnoty funkce.

Vezměte v úvahu následující příklady, jak můžete implementovat různé funkce.

Ukázkový scénář Trigger Vstupní vazba Výstupní vazba
Dojde k doručení nové zprávy fronty, která spustí funkci pro zápis do jiné fronty. Provedených* Žádný Provedených*
Naplánovaná úloha načte Blob Storage obsah a vytvoří nový dokument Cosmos DB. Časovač Blob Storage Cosmos DB
Event Grid slouží ke čtení obrázku z Blob Storage a dokumentu z Cosmos DB k odeslání e-mailu. Event Grid Blob Storage a Cosmos DB SendGrid
Webhook, který používá Microsoft Graph k aktualizaci excelového listu. HTTP Žádný Microsoft Graph

* Představuje různé fronty.

Tyto příklady nejsou určeny k vyčerpávajícímu, ale jsou k dispozici pro ilustraci, jak můžete použít triggery a vazby dohromady.

Triggery a definice vazeb

Triggery a vazby jsou definovány různě v závislosti na vývojovém jazyce.

Jazyk Aktivační události a vazby jsou konfigurovány pomocí...
Knihovna tříd C#      upravení metody a parametry s atributy jazyka C#
Java      upravení metody a parametry s poznámkami jazyka Java
JavaScript/PowerShell/Python/TypeScript      aktualizace function.jszapnuta (schéma)

Pro jazyky, které spoléhají na function.jsna portálu, poskytuje portál uživatelské rozhraní pro přidávání vazeb na kartě integrace . Soubor můžete také upravit přímo na portálu na kartě Code + test funkce. Visual Studio Code umožňuje snadno Přidat vazbu na function.jssouboru pomocí praktické sady výzev.

V jazycích .NET a Java typ parametru definuje datový typ pro vstupní data. Například použijte string k vytvoření vazby na text triggeru fronty, bajtové pole pro čtení jako binární a vlastní typ pro deserializaci objektu. Vzhledem k tomu, že funkce knihovny tříd .NET functions a funkce jazyka Java nespoléhají na function.js pro definice vazeb, nelze je vytvořit a upravit na portálu. Úpravy portálu jazyka c# jsou založeny na skriptu jazyka C#, který místo atributů používá function.js .

Další informace o tom, jak přidat vazby k existujícím funkcím, najdete v tématu připojení funkcí ke službám Azure pomocí vazeb.

Pro jazyky, které jsou dynamicky typované, jako je například JavaScript, použijte dataType vlastnost v souboru function.js . Například pro čtení obsahu požadavku HTTP v binárním formátu nastavte dataType na binary :

{
    "dataType": "binary",
    "type": "httpTrigger",
    "name": "req",
    "direction": "in"
}

Další možnosti pro dataType jsou stream a string .

Směr vazby

Všechny aktivační události a vazby mají direction v souboru function.js k dispozici vlastnost:

  • Pro aktivační události je směr vždy in
  • Vstupní a výstupní vazby používají in a out
  • Některé vazby podporují zvláštní směr inout . Pokud použijete inout , je k dispozici pouze Rozšířený editor prostřednictvím karty integrace na portálu.

Použijete-li atributy v knihovně tříd ke konfiguraci triggerů a vazeb, je směr poskytován v konstruktoru atributu nebo odvozen z typu parametru.

Přidání vazeb do funkce

Funkci můžete připojit k jiným službám pomocí vstupních nebo výstupních vazeb. Přidejte vazbu přidáním jejich specifických definic do funkce. Další informace najdete v tématu Přidání vazeb do existující funkce v Azure Functions.

Podporované vazby

Tato tabulka ukazuje vazby, které jsou podporovány v hlavních verzích modulu runtime Azure Functions:

Typ verze 2. x a vyšší1 Trigger Vstup Výstup
Blob Storage
Azure Cosmos DB
SQL Azure (preview)
Dapr3
Event Grid
Event Hubs
HTTP & Webhooky
IoT Hub
Kafka2
Mobile Apps
Notification Hubs
Queue Storage
RabbitMQ2
SendGrid
Service Bus
SignalR
Table Storage
Časovač
Twilio

1 počínaje modulem runtime verze 2. x musí být registrovány všechny vazby kromě protokolu HTTP a časovače. Viz Registrace rozšíření vazby.

2 triggery nejsou podporované v plánu spotřeby. Vyžaduje triggery řízené modulem runtime.

3 podporuje se jenom v Kubernetes, IoT Edge a dalších režimech v místním prostředí.

Informace o tom, které vazby jsou ve verzi Preview nebo které jsou schválené pro použití v produkčním prostředí, najdete v tématu podporované jazyky.

Příklady kódu vazeb

Pomocí následující tabulky můžete najít příklady specifických typů vazeb, které ukazují, jak pracovat s vazbami ve vašich funkcích. Nejprve vyberte kartu jazyk, která odpovídá vašemu projektu.

Služba Příklady ukázky
Blob Storage Trigger
Vstup
Výstup
Odkaz
Azure Cosmos DB Trigger
Vstup
Výstup
Odkaz
Event Grid Trigger
Výstup
Odkaz
Event Hubs Trigger
Výstup
IoT Hub Trigger
Výstup
HTTP Trigger Odkaz
Queue Storage Trigger
Výstup
Odkaz
RabbitMQ Trigger
Výstup
SendGrid Výstup
Service Bus Trigger
Výstup
Odkaz
SignalR Trigger
Vstup
Výstup
Table Storage Vstup
Výstup
Časovač Trigger Odkaz
Twilio Výstup Odkaz

Vlastní vazby

Můžete vytvořit vlastní vstupní a výstupní vazby. Vazby musí být vytvořeny v rozhraní .NET, ale lze je spotřebovat z libovolného podporovaného jazyka. Další informace o vytváření vlastních vazeb naleznete v tématu vytváření vlastních vstupních a výstupních vazeb.

Zdroje informací

Další kroky