AZURE FUNCTIONS HTTP-eseményindítók és kötések áttekintése
Azure Functions http-kérésekkel hívhatók meg kiszolgáló nélküli API-k létrehozásához és webhookokra való válaszadáshoz.
Művelet | Típus |
---|---|
Függvény futtatása HTTP-kérelemből | Eseményindító |
FÜGGVÉNY HTTP-válaszának visszaadása | Kimeneti kötés |
A bővítmény telepítése
A telepített NuGet-bővítménycsomag a függvényalkalmazásban használt C#-módtól függ:
A függvények ugyanabban a folyamatban futnak, mint a Functions-gazdagép. További információ: C# osztálykódtárfüggvények fejlesztése Azure Functions használatával.
A bővítmény funkciói a bővítmény verziójától függően változnak:
Adja hozzá a bővítményt a projekthez a NuGet 3.x-es verziójának telepítésével.
Csomag telepítése
A Functions 2.x-es verziójától kezdve a HTTP-bővítmény egy bővítménycsomag része, amely a host.json projektfájlban van megadva. További információ: bővítménycsomag.
A bővítmény ezen verziójának már elérhetőnek kell lennie a függvényalkalmazás számára a bővítménycsomag 2.x-es verziójával.
host.json beállításai
Ez a szakasz a kötéshez elérhető konfigurációs beállításokat ismerteti a 2.x és újabb verziókban. A host.json fájl beállításai a függvényalkalmazás-példányok összes függvényére vonatkoznak. Az alábbi példagazda.json fájl csak a kötés 2.x+ verziójának beállításait tartalmazza. A függvényalkalmazások konfigurációs beállításairól a 2.x és újabb verziókban a host.json-referencia a Azure Functions című témakörben talál további információt.
Megjegyzés
A host.json függvények 1.x-ben való hivatkozását lásd: host.json-referencia az 1.x Azure Functions.
{
"extensions": {
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 100,
"dynamicThrottlesEnabled": true,
"hsts": {
"isEnabled": true,
"maxAge": "10"
},
"customHeaders": {
"X-Content-Type-Options": "nosniff"
}
}
}
}
Tulajdonság | Alapértelmezett | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
customHeaders | Nincs | Lehetővé teszi egyéni fejlécek beállítását a HTTP-válaszban. Az előző példa hozzáadja a X-Content-Type-Options fejlécet a válaszhoz, hogy elkerülje a tartalomtípus-beszennyezést. Ez az egyéni fejléc a függvényalkalmazás összes HTTP-aktivált függvényére vonatkozik. |
||||||||||
dynamicThrottlesEnabled | Igaz* | Ha engedélyezve van, ez a beállítás azt eredményezi, hogy a kérésfeldolgozási folyamat rendszeres időközönként ellenőrzi a rendszer teljesítményszámlálóit, például connections/threads/processes/memory/cpu/etc és ha bármelyik számláló egy beépített magas küszöbértéken (80%) van túl, a kéréseket a rendszer válaszsal 429 "Too Busy" elutasítja, amíg a számláló(k) vissza nem térnek a normál szintre.*A használatalapú csomagokban az alapértelmezett érték a . true A dedikált csomagokban az alapértelmezett érték a .false |
||||||||||
hsts | nincs engedélyezve | Ha isEnabled a értékre true van állítva, a rendszer kikényszeríti a .NET Core HTTP Strict Transport Security (HSTS) viselkedését az HstsOptions osztályban meghatározott módon. A fenti példa a maxAge tulajdonságot is 10 napra állítja. A támogatott tulajdonságok a hsts következők:
|
||||||||||
maxConcurrentRequests | 100* | A párhuzamosan végrehajtott HTTP-függvények maximális száma. Ez az érték lehetővé teszi az egyidejűség szabályozását, ami segíthet az erőforrások kihasználtságának kezelésében. Előfordulhat például, hogy olyan HTTP-függvénye van, amely nagy számú rendszererőforrást (memóriát/processzort/szoftvercsatornát) használ, és ez problémákat okoz, ha az egyidejűség túl magas. Vagy rendelkezhet egy olyan függvénnyel, amely kimenő kéréseket küld egy külső szolgáltatásnak, és ezeknek a hívásoknak korlátozottnak kell lenniük. Ezekben az esetekben a szabályozás alkalmazása segíthet. *A használatalapú csomagok alapértelmezett értéke 100. A dedikált csomagok alapértelmezett értéke a kötetlen ( -1 ). |
||||||||||
maxOutstandingRequests | 200* | Az adott időpontban lekérhető kérelmek maximális száma. Ez a korlát magában foglalja azokat a kéréseket, amelyek várólistán vannak, de még nem kezdték meg a végrehajtást, valamint a folyamatban lévő végrehajtásokat is. A korláton túli bejövő kérelmeket a rendszer 429 "Túl elfoglalt" válaszsal elutasítja. Ez lehetővé teszi, hogy a hívók időalapú újrapróbálkozás-stratégiákat alkalmazzanak, és segít a kérések maximális késésének szabályozásában is. Ez csak a parancsprogram-gazdagép végrehajtási útvonalán belül előforduló sorbasorolást szabályozza. Az egyéb üzenetsorok, például a ASP.NET kéréssor továbbra is érvényben maradnak, és nem érintik ezt a beállítást. *A használati csomagok alapértelmezett értéke 200. A dedikált csomagok alapértelmezett értéke a kötetlen ( -1 ). |
||||||||||
routePrefix | api | Az összes útvonalra érvényes útvonalelőtag. Az alapértelmezett előtag eltávolításához használjon üres sztringet. |