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.
Služba Azure Functions se může vyvolat prostřednictvím požadavků HTTP, aby se sestavily bezserverová rozhraní API a reagovaly na webhooky.
| Akce | Typ |
|---|---|
| Spuštění funkce z požadavku HTTP | Spouštěč |
| Vrácení odpovědi HTTP z funkce | Výstupní vazba |
Instalace rozšíření
Balíček NuGet rozšíření, který nainstalujete, závisí na režimu jazyka C#, který používáte ve své aplikaci funkcí:
Funkce se spouštějí v izolovaném pracovním procesu C#. Další informace najdete v průvodci spuštěním služby Azure Functions v jazyce C# v izolovaném pracovním procesu.
Funkce rozšíření se liší v závislosti na verzi rozšíření:
Přidejte rozšíření do projektu instalací balíčku NuGet verze 3.x.
Poznámka:
Pro integraci ASP.NET Core v izolovaném prostředí .NET je potřeba další balíček rozšíření.
Instalace sady
Pokud chcete v aplikaci použít toto rozšíření vazeb, ujistěte se, že soubor host.json v kořenovém adresáři projektu obsahuje tento extensionBundle odkaz:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
V tomto příkladu version hodnota [4.0.0, 5.0.0) dává hostiteli Functions pokyn, aby používal verzi sady, která je alespoň 4.0.0 , ale menší než 5.0.0, která zahrnuje všechny potenciální verze 4.x. Tato notace efektivně udržuje vaši aplikaci na nejnovější dostupné podverzi sady rozšíření v4.x.
Pokud je to možné, měli byste použít nejnovější hlavní verzi sady rozšíření a umožnit modulu runtime automaticky udržovat nejnovější podverzi. Obsah nejnovější sady můžete zobrazit na stránce verze sady rozšíření. Další informace najdete v sadách rozšíření Azure Functions.
nastavení host.json
Tato část popisuje nastavení konfigurace dostupné pro tuto vazbu ve verzi 2.x a novější. Nastavení v souboru host.json platí pro všechny funkce v instanci aplikace funkcí. Další informace o nastavení konfigurace aplikace funkcí najdete v host.json referenčních informacích ke službě Azure Functions.
Poznámka:
Referenční informace o host.json ve službě Functions 1.x najdete v host.json referenčních informacích ke službě Azure Functions 1.x.
{
"extensions": {
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 100,
"dynamicThrottlesEnabled": true,
"hsts": {
"isEnabled": true,
"maxAge": "10"
},
"customHeaders": {
"X-Content-Type-Options": "nosniff"
}
}
}
}
| Vlastnost | Výchozí | Popis | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| customHeaders | Žádná | Umožňuje nastavit vlastní hlavičky v odpovědi HTTP. Předchozí příklad přidá hlavičku X-Content-Type-Options do odpovědi, aby se zabránilo zašifrování typu obsahu. Tato vlastní hlavička se vztahuje na všechny funkce aktivované protokolem HTTP v aplikaci funkcí. |
||||||||||
| Povolené dynamické omezení | pravdivý* | Pokud je tato možnost povolená, způsobí to, že kanál zpracování požadavků bude pravidelně kontrolovat čítače výkonu systému, jako connections/threads/processes/memory/cpu/etc je některý z těchto čítačů, a pokud některý z těchto čítačů překročí integrovanou vysokou prahovou hodnotu (80 %), požadavky budou odmítnuty s 429 "Too Busy" odpovědí, dokud se čítače nevrátí na normální úrovně.*Výchozí hodnota v plánu Consumption je true. Výchozí hodnota v plánech Premium a Dedicated je false. |
||||||||||
| hsts | nepovoleno | Pokud isEnabled je nastavena na true, chování http Strict Transport Security (HSTS) rozhraní .NET Core je vynuceno, jak je definováno HstsOptions ve třídě. Výše uvedený příklad také nastaví maxAge vlastnost na 10 dní. Podporované vlastnosti hsts jsou:
|
||||||||||
| MaximálníPočetSoučasnýchŽádostí | 100* | Maximální počet paralelně spuštěných funkcí HTTP. Tato hodnota umožňuje řídit souběžnost, což může pomoct se správou využití prostředků. Můžete mít například funkci HTTP, která používá velký počet systémových prostředků (paměti, procesoru nebo soketů), které způsobují problémy, když je souběžnost příliš vysoká. Nebo můžete mít funkci, která provádí odchozí požadavky na službu třetí strany a tato volání musí být omezená rychlostí. V takových případech může pomoct implementace omezování. *Výchozí hodnota pro plán Consumption je 100. Výchozí hodnota pro plány Premium a Dedicated je nevázaná ( -1). |
||||||||||
| maximální počet nevyřízených požadavků | 200* | Maximální počet nevyřízených žádostí, které se v daném okamžiku uchovávají. Tento limit zahrnuje požadavky, které jsou zařazené do fronty, ale nespustily se, ani probíhající provádění. Všechny příchozí požadavky nad tímto limitem jsou odmítnuty s odpovědí 429 "Příliš zaneprázdněné". To umožňuje volajícím využívat strategie opakování na základě času a také pomáhá řídit maximální latenci požadavků. To řídí pouze řízení fronty, ke kterému dochází v rámci cesty spuštění hostitele skriptu. Ostatní fronty, jako je fronta požadavků ASP.NET, budou dál platit a toto nastavení na ně nebude mít vliv. *Výchozí hodnota pro plán Consumption je 200. Výchozí hodnota pro plány Premium a Dedicated je nevázaná ( -1). |
||||||||||
| routePrefix | API | Předpona trasy, která se vztahuje na všechny trasy. K odebrání výchozí předpony použijte prázdný řetězec. |