Sdílet prostřednictvím


Rychlý start: Vytvoření aplikace Azure Functions pomocí azure App Configuration

V tomto rychlém startu se dozvíte, jak centralizovat a spravovat nastavení aplikace Azure Functions mimo váš kód pomocí služby Azure App Configuration. S integrací zprostředkovatele konfigurace .NET můžete přidat App Configuration jako další zdroj konfigurace s několika jednoduchými změnami kódu.

Požadavky

Přidejte klíč-hodnotu

Přidejte do úložiště App Configuration následující klíč–hodnotu a ponechte Štítek a typ obsahu s výchozími hodnotami. Další informace o tom, jak přidat hodnoty klíčů do úložiště pomocí webu Azure Portal nebo rozhraní příkazového řádku, najdete v tématu Vytvoření hodnoty klíče.

Klíč Hodnota
TestApp:Settings:Message Data z konfigurace Aplikace Azure

Vytvořte aplikaci funkcí

Výběrem šablony Azure Functions (C#) vytvořte aplikaci Azure Functions pomocí sady Visual Studio. Tato šablona vás provede konfigurací základních nastavení pro váš projekt. Podrobné pokyny najdete v tématu Vývoj azure Functions pomocí sady Visual Studio.

Při vytváření aplikace funkcí použijte následující tabulku jako referenci pro klíčové parametry.

Nastavení Hodnota
Výkonný pracovník Functions Izolované prostředí .NET 8.0
Funkce HTTP spouštěč
Úroveň autorizace Anonymní

Poznámka:

Azure App Configuration je možné použít se službou Azure Functions v izolovaném modelu pracovního procesu nebo v modelu v procesu. V tomto rychlém úvodu se jako příklad používá izolovaný model pracovníka. Kompletní příklady kódu pro oba modely najdete v úložišti GitHub konfigurace aplikace Azure.

Připojení ke službě App Configuration Store

Můžete se připojit do svého úložiště App Configuration pomocí Microsoft Entra ID (doporučeno) nebo připojovacího řetězce.

  1. Klikněte pravým tlačítkem na projekt a vyberte Spravovat balíčky NuGet. Na kartě Procházet vyhledejte a přidejte do projektu nejnovější stabilní verzi následujících balíčků NuGet.

    • Microsoft.Azure.AppConfiguration.Functions.Worker
    • Azure.Identity
  2. Otevřete Program.cs a následujícím způsobem aktualizujte kód. Azure App Configuration přidáte jako další zdroj konfigurace voláním AddAzureAppConfiguration metody.

    Použijete DefaultAzureCredential pro ověření do služby App Configuration. Postupujte podle pokynů, aby vaše přihlašovací údaje byly přiřazeny k roli Čtenář dat konfigurace aplikace. Ujistěte se, že před spuštěním aplikace necháte dostatek času na šíření oprávnění.

    using Azure.Identity;
    using Microsoft.Azure.Functions.Worker.Builder;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.Hosting;
    
    var builder = FunctionsApplication.CreateBuilder(args);
    
    // Connect to Azure App Configuration
    builder.Configuration.AddAzureAppConfiguration(options =>
    {
        Uri endpoint = new(Environment.GetEnvironmentVariable("AZURE_APPCONFIG_ENDPOINT") ?? 
            throw new InvalidOperationException("The environment variable 'AZURE_APPCONFIG_ENDPOINT' is not set or is empty."));
        options.Connect(endpoint, new DefaultAzureCredential())
               // Load all keys that start with `TestApp:` and have no label
               .Select("TestApp:*");
    });
    
  3. Otevřete Function1.cs a přidejte následující obor názvů.

    using Microsoft.Extensions.Configuration;
    

    Aktualizujte konstruktor, aby získal instanci IConfiguration pomocí injektování závislostí.

    private readonly IConfiguration _configuration;
    private readonly ILogger<Function1> _logger;
    
    public Function1(IConfiguration configuration, ILogger<Function1> logger)
    {
        _configuration = configuration;
        _logger = logger;
    }
    
  4. Aktualizujte metodu Run tak, aby načetla hodnoty z konfigurace.

    [Function("Function1")]
    public IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequest req)
    {
        _logger.LogInformation("C# HTTP trigger function processed a request.");
    
        // Read configuration data
        string key = "TestApp:Settings:Message";
        string? message = _configuration[key];
    
        return new OkObjectResult(message ?? $"Please create a key-value with the key '{key}' in Azure App Configuration.");
    }
    

Místní testování funkce

  1. Nastavte proměnnou prostředí.

    Nastavte proměnnou prostředí s názvem AZURE_APPCONFIG_ENDPOINT na koncový bod obchodu App Configuration, který najdete v části Přehled obchodu na webu Azure Portal.

    Pokud používáte příkazový řádek systému Windows, spusťte následující příkaz a restartujte příkazový řádek, aby se změna projevila:

    setx AZURE_APPCONFIG_ENDPOINT "<endpoint-of-your-app-configuration-store>"
    

    Pokud používáte PowerShell, spusťte následující příkaz:

    $Env:AZURE_APPCONFIG_ENDPOINT = "<endpoint-of-your-app-configuration-store>"
    

    Pokud používáte macOS nebo Linux, spusťte následující příkaz:

    export AZURE_APPCONFIG_ENDPOINT='<endpoint-of-your-app-configuration-store>'
    
  2. Stisknutím klávesy F5 otestujte funkci. Pokud se zobrazí výzva, přijměte požadavek ze sady Visual Studio ke stažení a instalaci nástrojů Azure Functions Core (CLI). Možná budete muset také povolit výjimku brány firewall, aby nástroje mohly zpracovávat požadavky HTTP.

  3. Zkopírujte adresu URL vaší funkce z výstupu modulu runtime služby Azure Functions.

    Rychlý start ladění funkcí ve VS

  4. Vložte adresu URL požadavku HTTP do adresního řádku prohlížeče. Následující obrázek ukazuje odpověď v prohlížeči na místní požadavek GET vrácený funkcí.

    Místní spuštění funkce Rychlý start

Správa parametrů triggeru pomocí odkazů na App Configuration

Spouštěče Azure Functions definují způsob, jak je funkce spuštěna. Atributy triggeru, jako jsou názvy front nebo názvy databází, se načítají při spuštění hostitele a nemůžou přímo načítat hodnoty z Azure App Configuration. Ke správě těchto parametrů můžete použít referenční funkci Konfigurace aplikace, která je k dispozici pro Azure Functions a App Service.

Referenční funkce konfigurace aplikace umožňuje odkazovat na hodnoty klíčů uložené v Azure App Configuration přímo z nastavení aplikace. Azure Functions tyto odkazy řeší při spuštění a umožňuje centrálně a bezpečně spravovat parametry triggeru.

Představte si například funkční aplikaci, která je spouštěna pomocí fronty. Místo zadání názvu fronty přímo v atributu triggeru můžete odkazovat na hodnotu klíče uloženou v Azure App Configuration.

  1. V Azure App Configuration Storu přidejte hodnotu klíče pro název vaší fronty:

    Klíč Hodnota
    TestApp:Storage:QueueName <Název fronty ve vašem účtu úložiště>
  2. V aplikaci funkcí vyberte Nastavení ->Proměnné prostředí -> na webu Azure Portal a vytvořte nastavení aplikace, které odkazuje na klíč Konfigurace aplikace:

    Název Hodnota
    MyQueueName @Microsoft.AppConfiguration(Endpoint=<your-store-endpoint>; Key=TestApp:Storage:QueueName)

    Návod

    Pokud máte v Azure App Configuration více hodnot klíčů, můžete je exportovat dávkově jako odkazy na Konfiguraci aplikací do Azure Functions pomocí webu Azure Portal nebo rozhraní příkazového řádku.

  3. Povolte spravovanou identitu pro aplikaci Azure Functions a přiřaďte jí roli Čtenář dat konfigurace aplikace pro váš App Configuration Store. Podrobné pokyny k nastavení odkazů na Konfiguraci aplikací najdete v tématu Použití odkazů na konfiguraci aplikací ve službě App Service a Azure Functions.

  4. Aktualizujte funkci spouštěnou frontou tak, aby používala nastavení aplikace.

    [Function("QueueTriggeredFunction")]
    public void Run([QueueTrigger(queueName: "%MyQueueName%")] QueueMessage message)
    {
        _logger.LogInformation($"C# Queue trigger function processed: {message.MessageText}");
    }
    

    Za běhu služba Azure Functions přeloží %MyQueueName% zástupný symbol na hodnotu uloženou v Azure App Configuration, která umožňuje centrálně spravovat parametry triggeru bez jejich pevně zakódování do kódu funkce.

Vyčistěte zdroje

Pokud nechcete dál používat prostředky vytvořené v tomto článku, odstraňte skupinu prostředků, kterou jste tady vytvořili, abyste se vyhnuli poplatkům.

Důležité

Odstranění skupiny prostředků je nevratné. Skupina prostředků a všechny prostředky v ní se trvale odstraní. Dávejte pozor, abyste omylem neodstranili nesprávnou skupinu prostředků nebo jednotlivé prostředky. Pokud jste vytvořili prostředky pro tento článek ve skupině prostředků, která obsahuje další prostředky, které chcete zachovat, odstraňte jednotlivé prostředky z příslušného podokna místo odstranění skupiny prostředků.

  1. Přihlaste se k webu Azure Portal a vyberte skupiny prostředků.
  2. Do pole Filtrovat podle názvu zadejte název vaší skupiny prostředků.
  3. V seznamu výsledků vyberte název skupiny prostředků, abyste zobrazili přehled.
  4. Vyberte odstranit skupinu zdrojů.
  5. Zobrazí se výzva k potvrzení odstranění skupiny prostředků. Potvrďte název skupiny prostředků a vyberte Odstranit.

Po několika okamžicích se skupina prostředků a všechny její prostředky vymažou.

Další kroky

V tomto rychlém startu jste integrli Azure App Configuration s aplikací Azure Functions. Pokud chcete zjistit, jak povolit aplikaci Funkcí dynamicky aktualizovat nastavení konfigurace, pokračujte dalším kurzem.

Pokud chcete zjistit, jak používat příznaky funkcí z Azure App Configuration v rámci aplikace Azure Functions, přejděte k následujícímu kurzu.

Pokud chcete zjistit, jak pomocí spravované identity Azure zjednodušit přístup ke službě App Configuration, pokračujte následujícím kurzem.