Úvod do Azure Functions v Visual Studio pro Mac
Důležité
Visual Studio pro Mac je naplánováno vyřazení ze dne 31. srpna 2024 v souladu se společností MicrosoftModerní zásady životního cyklu. I když můžete dál pracovat s Visual Studio pro Mac, existuje několik dalších možností pro vývojáře na Macu, jako je verze Preview nového rozšíření C# Dev Kit pro VS Code.
Přečtěte si další informace o časových osách podpory a alternativách.
Azure Functions je způsob, jak vytvářet a spouštět fragmenty kódu řízené událostmi – funkce – v cloudu, aniž byste museli explicitně zřizovat nebo spravovat infrastrukturu. Další informace o službě Azure Functions najdete v dokumentaci ke službě Azure Functions.
Požadavky
Nástroje funkcí Azure jsou součástí Visual Studio pro Mac 7.5 a novější.
K vytváření a nasazování funkcí potřebujete také předplatné Azure. Pokud nemáte účet Azure, můžete se dnes zdarma zaregistrovat a získat 12 měsíců bezplatných oblíbených služeb, bezplatný kredit 200 USD a 25 + vždy bezplatné služby ->https://azure.com/free .
Vytvoření prvního projektu Azure Functions
V Visual Studio pro Mac vyberte Soubor > nové řešení.
V dialogovém okně Nový projekt vyberte šablonu Azure Functions v části Obecné v cloudu > a klikněte na Další:
Vyberte počáteční šablonu Azure Functions, kterou chcete použít, zadejte název funkce a klikněte na Další.
Tip
I když jsou sady modulu runtime a šablony Azure Functions (CLI) udržovány co nejaktuálně, jsou nutně zastaralé. Při vytváření nového projektu Functions Visual Studio pro Mac zkontroluje aktualizace rozhraní příkazového řádku a upozorní vás, jak je znázorněno na následujícím obrázku. Stačí kliknout na tlačítko a stáhnout aktualizované šablony.
V závislosti na typu vybrané funkce se na další stránce zobrazí výzva k zadání podrobností, jako jsou přístupová práva, jak je znázorněno na následujícím obrázku:
Další informace o různých typech šablon Azure Functions a vlastnostech vazeb potřebných ke konfiguraci každé šablony najdete v části Dostupné šablony funkcí. V tomto příkladu používáme trigger HTTP s přístupovými právy nastavenými na anonymní.
Jakmile nastavíte parametry, zvolte umístění projektu a klikněte na Vytvořit.
Visual Studio pro Mac vytvoří projekt .NET Standard s zahrnutou výchozí funkcí. Obsahuje také odkazy NuGet na celou řadu balíčků AzureWebJobs a také na balíček Newtonsoft.Json .
Nový projekt obsahuje následující soubory:
- your-function-name.cs – Tato třída obsahuje často používaný kód pro funkci, kterou jste vybrali. Obsahuje atribut FunctionName s názvem funkce a atribut triggeru, který určuje, co aktivuje funkci (např. požadavek HTTP). Další informace o metodě funkce najdete v referenčním článku pro vývojáře azure Functions v jazyce C#.
- host.json – Tento soubor popisuje globální možnosti konfigurace pro hostitele služby Functions. Příklad souboru a informace o dostupných nastaveních pro tento soubor najdete v referenčních informacích k host.json pro Azure Functions.
- local.settings.json – Tento soubor obsahuje všechna nastavení pro místní spouštění funkcí. Tato nastavení používají nástroje Azure Functions Core Tools. Další informace najdete v souboru místních nastavení v článku o nástrojích Azure Functions Core Tools.
Teď, když jste vytvořili nový projekt Azure Functions v Visual Studio pro Mac, můžete otestovat výchozí funkci aktivovanou protokolem HTTP z místního počítače.
Místní testování funkce
S podporou azure Functions v Visual Studio pro Mac můžete funkci otestovat a ladit na místním vývojovém počítači.
Pokud chcete funkci otestovat místně, stiskněte tlačítko Spustit v Visual Studio pro Mac:
Spuštění projektu spustí místní ladění ve funkci Azure a otevře nové okno terminálu, jak je znázorněno na následujícím obrázku:
Zkopírujte adresu URL z výstupu.
Vložte adresu URL pro požadavek HTTP do panelu adresy prohlížeče. Přidejte řetězec
?name=<yourname>
dotazu na konec adresy URL a spusťte požadavek. Následující obrázek ukazuje odpověď v prohlížeči na místní požadavek GET vrácený funkcí:
Přidání další funkce do projektu
Šablony funkcí umožňují rychle vytvářet nové funkce s použitím nejběžnějších aktivačních událostí a šablon. Pokud chcete vytvořit jiný typ funkce, postupujte takto:
Pokud chcete přidat novou funkci, klikněte pravým tlačítkem myši na název projektu a vyberte Přidat > funkci...:
V dialogovém okně Nová funkce Azure Vyberte požadovanou funkci:
Seznam šablon funkcí Azure najdete v části Dostupné šablony funkcí.
Pomocí výše uvedeného postupu můžete do projektu aplikace funkcí přidat další funkce. Každá funkce v projektu může mít jinou aktivační událost, ale funkce musí mít přesně jednu aktivační událost. Další informace najdete v tématu o koncepcích triggerů a vazeb Azure Functions.
Publikování do Azure
Klikněte pravým tlačítkem na název projektu a vyberte Publikovat > do Azure:
Pokud jste už svůj účet Azure připojili k Visual Studio pro Mac zobrazí se seznam dostupných aplikačních služeb. Pokud jste se nepřihlásili, zobrazí se výzva k tomu.
V dialogovém okně Publikovat do služby Aplikace Azure Můžete vybrat existující službu App Service nebo vytvořit novou kliknutím na Tlačítko Nový.
V dialogovém okně Vytvořit novou službu App Service zadejte nastavení:
Nastavení Popis Název služby App Service Globálně jedinečný název, který identifikuje vaši novou aplikaci funkcí. Předplatné Předplatné Azure, které se má použít. Skupina prostředků Název skupiny prostředků, ve které chcete vytvořit aplikaci funkcí Zvolte + , že chcete vytvořit novou skupinu prostředků. Plán služby Zvolte existující plán nebo vytvořte vlastní plán. Zvolte umístění v oblasti blízko vás nebo v blízkosti jiných služeb, ke kterým vaše funkce přistupují. Kliknutím na Tlačítko Další vytvoříte účet úložiště. Modul runtime Functions vyžaduje účet Azure Storage. Kliknutím na Vlastní vytvoříte účet úložiště pro obecné účely nebo použijete existující účet:
Kliknutím na Vytvořit vytvořte aplikaci funkce a související prostředky v Azure a nasaďte kód projektu funkce.
Během publikování se může zobrazit výzva k zobrazení dialogového okna s informacemi o aktualizaci verze funkcí v Azure. Klikněte na Ano:
Nastavení aplikace funkcí
Všechna nastavení přidaná do local.settings.json musí být také přidána do aplikace funkcí v Azure. Tato nastavení se při publikování projektu nenahrají automaticky.
Pokud chcete získat přístup k nastavení aplikace, přejděte na web Azure Portal na adrese https://ms.portal.azure.com/. V části Aplikace Functions vyberte Aplikace funkcí a zvýrazněte název vaší funkce:
Na kartě Přehled vyberte nastavení aplikace v části Nakonfigurované funkce:
Tady můžete nastavit Nastavení aplikace funkcí, kde můžete přidat nová nastavení aplikace nebo upravit stávající:
Jedním z důležitých nastavení, které možná budete muset nastavit, je FUNCTIONS_EXTENSION_VERSION
. Při publikování z Visual Studio pro Mac by tato hodnota měla být nastavena na beta.
Dostupné šablony funkcí
Trigger GitHubu – Reagujte na události, ke kterým dochází v úložištích GitHubu. Další informace najdete v článku o Azure Functions na GitHubu .
- GitHub commenter – Tato funkce se spustí, když obdrží webhook GitHubu pro problém nebo žádost o přijetí změn a přidá komentář.
- Webhook GitHubu – Tato funkce se spustí, když obdrží webhook GitHubu.
HTTP – Spuštění kódu aktivujte pomocí požadavku HTTP. Existují explicitní šablony pro následující triggery HTTP:
- Trigger HTTP
- Vytvoření, aktualizace, čtení a odstranění HTTP GET (CRUD)
- HTTP POST CRUD
- Trigger HTTP s parametry
Časovač – Provedení čištění nebo jiných dávkových úloh podle předdefinovaného plánu Tato šablona má dvě pole: Název a plán, což je šesti polí výraz CRON. Další informace najdete v článku o službě Azure Functions v čase.
Trigger fronty – Jedná se o funkci, která bude reagovat na zprávy při jejich doručení do fronty Azure Queue Storage. Kromě názvu funkce tato šablona přebírá cestu (název fronty, ze které se zpráva přečte) a účet úložiště Připojení ion (název nastavení aplikace obsahující váš účet úložiště připojovací řetězec). Další informace najdete v článku o službě Azure Functions ve službě Queue Storage.
Trigger objektu blob – zpracování objektů blob služby Azure Storage při jejich přidání do kontejneru Kromě názvu funkce přebírá tato šablona také cestu a vlastnost připojení. Vlastnost cesta je cesta v rámci vašeho účtu úložiště, kterou trigger bude monitorovat. Účet připojení je název nastavení aplikace, které obsahuje váš účet úložiště připojovací řetězec. Další informace najdete v článku o službě Azure Functions Blob Storage.
Obecný webhook – Jedná se o jednoduchou funkci, která se spustí vždy, když obdrží požadavek z jakékoli služby, která podporuje webhooky. Další informace najdete v článku o Službě Azure Functions v obecných webhoocích.
Orchestrace trvalých funkcí – Odolné funkce umožňují psát stavové funkce v bezserverovém prostředí. Toto rozšíření za vás spravuje stav, kontrolní body a restartování. Další informace najdete v průvodcích o Durable functions.
Image Resizer – Tato funkce vytvoří změněné obrázky při každém přidání objektu blob do kontejneru. Šablona přebírá cestu a připojovací řetězec pro trigger, malý výstup obrázku a střední výstup obrázku.
Token SAS – Tato funkce vygeneruje token SAS pro daný kontejner a název objektu blob služby Azure Storage. Kromě názvu funkce přebírá tato šablona také cestu a vlastnost připojení. Vlastnost cesta je cesta v rámci vašeho účtu úložiště, kterou trigger bude monitorovat. Účet připojení je název nastavení aplikace, které obsahuje váš účet úložiště připojovací řetězec. Je také potřeba nastavit přístupová práva . Úroveň autorizace určuje, jestli funkce vyžaduje klíč rozhraní API a jaký klíč se má použít; Funkce používá funkční klíč; Správa používá přístupový klíč účtu. Další informace najdete ve funkci Azure v jazyce C# pro vygenerování ukázky tokenů SAS.