Triggerek és kötések Azure Functions fogalmakAzure Functions triggers and bindings concepts

Ebből a cikkből megtudhatja, hogy milyen magas szintű fogalmakat indít a functions-eseményindítók és-kötések.In this article you learn the high-level concepts surrounding functions triggers and bindings.

Az eseményindítók a függvény futtatását okozzák.Triggers are what cause a function to run. Egy eseményindító határozza meg a függvény meghívásának módját, és a függvénynek pontosan egy eseményindítóval kell rendelkeznie.A trigger defines how a function is invoked and a function must have exactly one trigger. Az eseményindítók társított adatokkal rendelkeznek, amelyek gyakran a függvény hasznos adattartalmaként vannak megadva.Triggers have associated data, which is often provided as the payload of the function.

A függvények kötése egy másik erőforrás a függvényhez való deklaratív csatlakoztatásának módja. a kötések bemeneti Kötésként, kimeneti Kötéskéntvagy mindkettőként is csatlakoztathatók.Binding to a function is a way of declaratively connecting another resource to the function; bindings may be connected as input bindings, output bindings, or both. A kötések adatait paraméterként a függvény kapja meg.Data from bindings is provided to the function as parameters.

Az igényeinek megfelelően összekeverheti és egyeztetheti a különböző kötéseket.You can mix and match different bindings to suit your needs. A kötések nem kötelezőek, és egy függvénynek lehet egy vagy több bemeneti és/vagy kimeneti kötése.Bindings are optional and a function might have one or multiple input and/or output bindings.

Az eseményindítók és kötések lehetővé teszik a más szolgáltatásokhoz való rögzítjük való hozzáférés elkerülését.Triggers and bindings let you avoid hardcoding access to other services. A függvény adatokat fogad (például egy üzenetsor tartalmát) a függvény paraméterei között.Your function receives data (for example, the content of a queue message) in function parameters. Az adatküldés (például üzenetsor létrehozása) a függvény visszatérési értékével végezhető el.You send data (for example, to create a queue message) by using the return value of the function.

Tekintse át az alábbi példákat a különböző függvények megvalósítására.Consider the following examples of how you could implement different functions.

PéldaforgatókönyvExample scenario EseményindítóTrigger Bemeneti kötésInput binding Kimeneti kötésOutput binding
Egy új üzenetsor-üzenet érkezik, amely egy függvény futtatásával ír egy másik várólistára.A new queue message arrives which runs a function to write to another queue. Queue*Queue* NincsenekNone Queue*Queue*
Az ütemezett feladatok beolvassák Blob Storage tartalmát, és létrehoz egy új Cosmos DB dokumentumot.A scheduled job reads Blob Storage contents and creates a new Cosmos DB document. IdőzítőTimer BlobtárolóBlob Storage Cosmos DBCosmos DB
A Event Grid egy rendszerképet olvas be a Blob Storageról, és a Cosmos DB dokumentumból küld e-mailt.The Event Grid is used to read an image from Blob Storage and a document from Cosmos DB to send an email. Event GridEvent Grid Blob Storage és Cosmos DBBlob Storage and Cosmos DB SendGridSendGrid
Egy webhook, amely Microsoft Grapht használ az Excel-lapok frissítéséhez.A webhook that uses Microsoft Graph to update an Excel sheet. HTTPHTTP NincsenekNone Microsoft GraphMicrosoft Graph

*Különböző várólistákat jelöl* Represents different queues

Ezek a példák nem teljes körűek, de az eseményindítók és kötések együttes használatának szemléltetésére szolgálnak.These examples are not meant to be exhaustive, but are provided to illustrate how you can use triggers and bindings together.

Trigger-és kötési definíciókTrigger and binding definitions

Az eseményindítók és kötések a fejlesztési módszertől függően eltérő módon vannak meghatározva.Triggers and bindings are defined differently depending on the development approach.

PlatformPlatform Az eseményindítók és kötések konfigurálása...Triggers and bindings are configured by...
C#osztály könyvtáraC# class library      díszítő módszerek és paraméterek az C# attribútumokkal     decorating methods and parameters with C# attributes
Minden más (beleértve a Azure Portal)All others (including Azure portal)      function. JSON frissítése (séma)     updating function.json (schema)

A portál egy felhasználói felületet biztosít ehhez a konfigurációhoz, de a fájl szerkesztéséhez közvetlenül is megnyithatja a függvény integrálás lapján elérhető speciális szerkesztőt .The portal provides a UI for this configuration, but you can edit the file directly by opening the Advanced editor available via the Integrate tab of your function.

A .NET-ben a paraméter típusa határozza meg a bemeneti adatok adattípusát.In .NET, the parameter type defines the data type for input data. Például a paranccsal kötést hozhat string létre egy üzenetsor-trigger szövegéhez, egy byte-tömböt, amely binárisként és egyéni típusként egy objektumra deszerializálható.For instance, use string to bind to the text of a queue trigger, a byte array to read as binary and a custom type to de-serialize to an object.

A dinamikusan beírt nyelvek (például a JavaScript) a dataType function. JSON fájlban található tulajdonságot használják.For languages that are dynamically typed such as JavaScript, use the dataType property in the function.json file. Ha például bináris formátumban szeretné beolvasni egy HTTP-kérelem tartalmát, állítsa dataType binarya következőre:For example, to read the content of an HTTP request in binary format, set dataType to binary:

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

A dataType stream és astringtovábbi beállításai.Other options for dataType are stream and string.

Kötési irányBinding direction

Minden eseményindító és kötés rendelkezik egy direction tulajdonsággal a function. JSON fájlban:All triggers and bindings have a direction property in the function.json file:

  • Az eseményindítók esetében az irány mindiginFor triggers, the direction is always in
  • A bemeneti és kimeneti kötések in használata ésoutInput and output bindings use in and out
  • Egyes kötések speciális irányt inouttámogatnak.Some bindings support a special direction inout. A használata inoutesetén csak a speciális szerkesztő érhető el a portál integrálás lapján.If you use inout, only the Advanced editor is available via the Integrate tab in the portal.

Ha az attribútumokat egy osztály -függvénytárban konfigurálja az eseményindítók és kötések konfigurálásához, az irány egy attribútum konstruktorában van megadva, vagy a paraméter típusa alapján következtethető ki.When you use attributes in a class library to configure triggers and bindings, the direction is provided in an attribute constructor or inferred from the parameter type.

Támogatott kötésekSupported bindings

Az alábbi táblázat a kötések az Azure Functions runtime két fő verziói által támogatott.The following table shows the bindings that are supported in the two major versions of the Azure Functions runtime.

TípusType 1.x1.x 2.x12.x1 EseményindítóTrigger Input (Bemenet)Input KimenetOutput
Blob StorageBlob Storage
Cosmos DBCosmos DB
Event GridEvent Grid
Event HubsEvent Hubs
A HTTP és WebhookokHTTP & Webhooks
A Microsoft Graph
Excel-táblák
Microsoft Graph
Excel tables
A Microsoft Graph
OneDrive-fájlok
Microsoft Graph
OneDrive files
A Microsoft Graph
Outlookos e-mail cím
Microsoft Graph
Outlook email
A Microsoft Graph
események
Microsoft Graph
Events
A Microsoft Graph
hitelesítési jogkivonatok
Microsoft Graph
Auth tokens
Mobile AppsMobile Apps
Értesítési központNotification Hubs
Queue StorageQueue storage
SendGridSendGrid
SzolgáltatásbuszService Bus
SignalRSignalR
Table StorageTable storage
IdőzítőTimer
TwilioTwilio

1 2.x, HTTP- és időzítő kivételével az összes kötések kell regisztrálni.1 In 2.x, all bindings except HTTP and Timer must be registered. Lásd: regisztrálja a kötési bővítményeket.See Register binding extensions.

További információ arról, hogy mely kötések érhetők el előzetes verzióban, vagy hogy a rendszer az éles használatra jóváhagyja a támogatott nyelveket.For information about which bindings are in preview or are approved for production use, see Supported languages.

További forrásokResources

További lépésekNext steps