Cvičení – přidání konfigurace služby Azure Storage do aplikace

Dokončeno

Teď do naší aplikace .NET Core přidáme podporu načtení připojovacího řetězce z konfiguračního souboru. Začneme přidáním potřebného instalatérství pro správu konfigurace v souboru JSON.

Vytvoření konfiguračního souboru JSON

  1. Pokud tam ještě nejste, změňte adresář na adresář PhotoSharingApp:

    cd PhotoSharingApp
    
  2. Zadáním následujícího příkazu pomocí touch nástroje vytvořte soubor s názvem appsettings.json:

    touch appsettings.json
    
  3. Otevřete projekt v editoru. Pokud pracujete místně, můžete použít editor podle svého výběru. Doporučujeme Visual Studio Code, což je rozšiřitelné integrované vývojové prostředí (IDE) pro různé platformy. Pokud pracujete v Azure Cloud Shellu (vpravo), doporučujeme editor Cloud Shellu. Editor otevřete v obou prostředích pomocí následujícího příkazu:

    code .
    
  4. V editoru vyberte soubor appsettings.json a přidejte následující text:

    {
        "ConnectionStrings": {
            "StorageAccount": "<value>"
        }
    }
    
  5. Uložte soubor pomocí klávesové zkratky (Ctrl+S) nebo v místní nabídce vyberte Uložit (v záhlaví editoru vyberte ikonu se ... třemi tečkami).

  6. Teď potřebujeme použít příkaz Azure k získání skutečného účtu úložiště připojovací řetězec. V relaci Cloud Shellu vložte následující příkaz a nahraďte <name> jedinečný název účtu úložiště, který jste vytvořili v předchozím cvičení, a stisknutím klávesy Enter spusťte tento příkaz:

    az storage account show-connection-string \
      --resource-group <rgn>[sandbox resource group name]</rgn> \
      --query connectionString \
      --name <name>
    
  7. Odpověď obsahuje připojovací řetězec ohraničené uvozovkami, které vypadají podobně jako v následujícím příkladu:

    "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=storage1ab;AccountKey=QtSCGB...7AeoW0Hw=="
    
  8. Zkopírujte připojovací řetězec a v souboru appsettings.json v editoru nahraďte <value> zástupný symbol tímto připojovací řetězec.

  9. Stisknutím kombinace kláves Ctrl+S soubor uložte.

  10. V editoru otevřete soubor projektu PhotoSharingApp.csproj.

  11. Zkopírujte a vložte následující blok konfigurace pod existující <ItemGroup> blok.

    <ItemGroup>
        <None Update="appsettings.json">
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None>
    </ItemGroup>
    
  12. Stisknutím kombinace kláves Ctrl+S soubor uložte. (Tento soubor je nutné uložit nebo při přidání následujícího balíčku ztratíte změnu.)

Přidání podpory pro čtení konfiguračního souboru JSON

V konzole Cloud Shellu zkopírujte a spusťte následující kód, který přidá odkaz na balíček NuGet Microsoft.Extensions.Configuration.Json :

dotnet add package Microsoft.Extensions.Configuration.Json

Přidání kódu pro čtení konfiguračního souboru

Teď, když jsme přidali požadované knihovny pro povolení čtení konfigurace, musíme v naší konzolové aplikaci povolit danou funkci.

  1. V editoru vyberte Program.cs.

  2. V horní části souboru je okomentovaný řádek kódu. Odstraňte tento řádek a na začátek souboru přidejte následující řádky kódu:

    using System;    
    using Microsoft.Extensions.Configuration;
    using System.IO;
    
  3. Nahraďte obsah metody Main (řádek obsahující text "Hello World!") následujícím kódem:

    namespace PhotoSharingApp
    {
        class Program
        {
            static void Main(string[] args)
            {
                var builder = new ConfigurationBuilder()
                    .SetBasePath(Directory.GetCurrentDirectory())
                    .AddJsonFile("appsettings.json");
    
                var configuration = builder.Build();
            }
        }
    }
    

    Tento kód provede inicializaci konfiguračního systému tak, aby se umožnilo čtení ze souboru appsettings.json.

    Soubor Program.cs by teď měl vypadat takto:

    using System;
    using Microsoft.Extensions.Configuration;
    using System.IO;
    
    namespace PhotoSharingApp
    {
        class Program
        {
            static void Main(string[] args)
            {
                var builder = new ConfigurationBuilder()
                    .SetBasePath(Directory.GetCurrentDirectory())
                    .AddJsonFile("appsettings.json");
    
                var configuration = builder.Build();
            }
        }
    }
    
  4. Uložte soubor.

Teď do naší aplikace Node.js přidáme podporu načtení připojovacího řetězce z konfiguračního souboru. Začneme přidáním potřebné instalace pro správu konfigurace z našeho souboru JavaScriptu.

Vytvoření konfiguračního souboru .env

  1. V relaci Azure Cloud Shellu zadejte následující příkaz, abyste se ujistili, že jste ve správném pracovním adresáři pro váš projekt.

    cd PhotoSharingApp 
    
  2. Zadáním následujícího příkazu vytvořte soubor s názvem .env:

    touch .env
    
  3. Otevřete projekt v editoru Cloud Shellu:

    code .
    
  4. V editoru vyberte soubor .env a přidejte následující text.

    Poznámka:

    Možná budete muset vybrat tlačítko aktualizovat v kódu, aby se zobrazily nové soubory.

    AZURE_STORAGE_CONNECTION_STRING=<value>
    

    Tip

    AZURE_STORAGE_CONNECTION_STRING je pevně zakódovaná proměnná prostředí, která se používá pro rozhraní API služby Storage k vyhledání přístupových klíčů.

  5. Uložte soubor pomocí klávesové zkratky (Ctrl+S) nebo vyberte ikonu se třemi tečkami (...) v záhlaví editoru a pak v místní nabídce vyberte Uložit .

  6. Teď potřebujeme k získání skutečného účtu úložiště připojovací řetězec použít příkaz Azure. V relaci Cloud Shellu spusťte následující příkaz a nahraďte <name> ho názvem účtu úložiště, který jste vytvořili v předchozím cvičení.

    az storage account show-connection-string \
      --resource-group <rgn>[sandbox resource group name]</rgn> \
      --query connectionString \
      --name <name>
    
  7. Odpověď je připojovací řetězec ohraničené uvozovkami, které vypadají podobně jako v následujícím příkladu:

    "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=storage1ab;AccountKey=QtSCGB...7AeoW0Hw=="  
    
  8. Zkopírujte připojovací řetězec a nahraďte <value> ho v souboru .env tímto připojovací řetězec.

  9. Stisknutím kombinace kláves Ctrl+S soubor uložte.

Přidání podpory pro čtení konfiguračního souboru prostředí

Do aplikace Node.js můžete zahrnout podporu pro čtení ze souboru .env přidáním balíčku dotenv.

  1. Spuštěním následujícího příkazu v relaci Cloud Shellu přidejte závislost do balíčku dotenv pomocí npmpříkazu :

    npm install dotenv --save
    

Přidání kódu pro čtení konfiguračního souboru

Teď, když jsme přidali požadované knihovny pro povolení čtení konfigurace, musíme v naší aplikaci povolit danou funkci.

  1. V editoru otevřete soubor index.js .

  2. V horní části souboru je řádek kódu #!/usr/bin/env node. Pod tento řádek přidejte následující řádek kódu:

    require('dotenv').config();
    
  3. Stisknutím kombinace kláves Ctrl+S soubor uložte.

Teď, když máme připojenou konfiguraci JSON, můžeme začít přidávat kód pro použití účtu úložiště.