Latihan - Menambahkan konfigurasi Azure Storage ke aplikasi Anda

Selesai

Mari kita tambahkan dukungan ke aplikasi inti .NET kita untuk mengambil string koneksi dari file konfigurasi. Kita akan mulai dengan menambahkan penyaluran yang diperlukan untuk mengelola konfigurasi dalam file JSON.

Membuat file konfigurasi JSON

  1. Ubah direktori ke direktori PhotoSharingApp, jika Anda belum berada di sana:

    cd PhotoSharingApp
    
  2. Masukkan perintah berikut untuk menggunakan touch alat untuk membuat file bernama appsettings.json:

    touch appsettings.json
    
  3. Buka proyek di editor. Jika bekerja secara lokal, Anda dapat menggunakan editor pilihan Anda. Kami merekomendasikan Visual Studio Code, yang merupakan IDE lintas platform yang dapat diperluas. Jika bekerja di Azure Cloud Shell (di sebelah kanan), kami merekomendasikan editor Cloud Shell. Gunakan perintah berikut untuk membuka editor di salah satu lingkungan:

    code .
    
  4. Di editor, pilih file appsettings.json dan tambahkan teks berikut:

    {
        "ConnectionStrings": {
            "StorageAccount": "<value>"
        }
    }
    
  5. Simpan file menggunakan pintasan keyboard (Ctrl+S) atau pilih Simpan dari menu konteks (pilih ikon elipsis ... di bilah judul editor).

  6. Sekarang, kita perlu menggunakan perintah Azure untuk mendapatkan string koneksi akun penyimpanan yang sebenarnya. Di sesi Cloud Shell, tempelkan perintah berikut, ganti <name> dengan nama akun penyimpanan unik yang Anda buat di latihan sebelumnya, lalu tekan Enter untuk menjalankan perintah:

    az storage account show-connection-string \
      --resource-group <rgn>[sandbox resource group name]</rgn> \
      --query connectionString \
      --name <name>
    
  7. Respons berisi string koneksi yang dibatasi oleh kuotasi, yang terlihat seperti contoh berikut:

    "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=storage1ab;AccountKey=QtSCGB...7AeoW0Hw=="
    
  8. Salin string koneksi, dan di file appsettings.json di penyunting, ganti tempat penampung <value> dengan string koneksi ini.

  9. Tekan Ctrl+S untuk menyimpan file.

  10. Di editor, buka PhotoSharingApp.csproj file proyek.

  11. Salin dan tempel blok konfigurasi berikut di bawah blok <ItemGroup> yang ada.

    <ItemGroup>
        <None Update="appsettings.json">
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None>
    </ItemGroup>
    
  12. Tekan Ctrl+S untuk menyimpan file. (Anda harus menyimpan file ini, atau Anda akan kehilangan perubahan saat menambahkan paket berikut!)

Menambahkan dukungan untuk membaca file konfigurasi JSON

Di konsol Cloud Shell, salin dan jalankan kode berikut untuk menambahkan referensi ke paket NuGet Microsoft.Extensions.Configuration.Json :

dotnet add package Microsoft.Extensions.Configuration.Json

Menambahkan kode untuk membaca file konfigurasi

Sekarang kita telah menambahkan pustaka yang diperlukan untuk mengaktifkan pembacaan konfigurasi, kita perlu mengaktifkan fungsi tersebut di aplikasi konsol.

  1. Di editor, pilih Program.cs.

  2. Di bagian atas file ada baris kode yang dikomentari. Hapus baris tersebut dan tambahkan baris kode berikut ke bagian atas file:

    using System;    
    using Microsoft.Extensions.Configuration;
    using System.IO;
    
  3. Ganti konten metode Utama (baris yang berisi "Halo Dunia!") dengan kode berikut:

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

    Kode ini menginisialisasi sistem konfigurasi untuk dibaca dari file appsettings.json.

    File Program.cs Anda akan terlihat seperti ini:

    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. Simpan file.

Mari kita tambahkan dukungan ke aplikasi Node.js kita untuk mengambil string koneksi dari file konfigurasi. Kita akan mulai dengan menambahkan penyaluran yang diperlukan untuk mengelola konfigurasi dari file JavaScript.

Membuat file konfigurasi .env

  1. Di sesi Azure Cloud Shell, masukkan perintah berikut untuk memastikan Anda berada di direktori kerja yang benar untuk proyek Anda.

    cd PhotoSharingApp 
    
  2. Masukkan perintah berikut untuk membuat file bernama .env:

    touch .env
    
  3. Buka proyek di editor Cloud Shell:

    code .
    
  4. Di editor, pilih file .env, dan tambahkan teks berikut.

    Catatan

    Anda mungkin perlu memilih tombol refresh dalam kode untuk melihat file baru.

    AZURE_STORAGE_CONNECTION_STRING=<value>
    

    Tip

    AZURE_STORAGE_CONNECTION_STRING adalah variabel lingkungan yang dikodekan secara permanen yang digunakan untuk API Penyimpanan untuk mencari kunci akses.

  5. Simpan file menggunakan pintasan keyboard (Ctrl+S) atau pilih ikon elipsis (...) di bilah judul editor, lalu pilih Simpan dari menu konteks.

  6. Sekarang, kita perlu menggunakan perintah Azure untuk mendapatkan string koneksi akun penyimpanan yang sebenarnya. Di sesi Cloud Shell, jalankan perintah berikut, ganti <name> dengan nama akun penyimpanan yang Anda buat di latihan sebelumnya.

    az storage account show-connection-string \
      --resource-group <rgn>[sandbox resource group name]</rgn> \
      --query connectionString \
      --name <name>
    
  7. Respons adalah string koneksi yang dibatasi oleh kuotasi, yang terlihat seperti contoh berikut:

    "DefaultEndpointsProtocol=https;EndpointSuffix=core.windows.net;AccountName=storage1ab;AccountKey=QtSCGB...7AeoW0Hw=="  
    
  8. Salin string koneksi, dan ganti <value> dalam file .env dengan string koneksi ini.

  9. Tekan Ctrl+S untuk menyimpan file.

Menambahkan dukungan untuk membaca file konfigurasi lingkungan

Node.js dapat menyertakan dukungan untuk membaca dari file .env dengan menambahkan paket dotenv.

  1. Di sesi Cloud Shell, jalankan perintah berikut untuk menambahkan dependensi ke paket dotenv menggunakan npm:

    npm install dotenv --save
    

Menambahkan kode untuk membaca file konfigurasi

Sekarang kita telah menambahkan pustaka yang diperlukan untuk mengaktifkan membaca konfigurasi, kita perlu mengaktifkan fungsionalitas tersebut di aplikasi.

  1. Di penyunting, buka file index.js.

  2. Di bagian atas file adalah baris kode #!/usr/bin/env node. Di bawah baris tersebut, tambahkan baris kode berikut:

    require('dotenv').config();
    
  3. Tekan Ctrl+S untuk menyimpan file.

Sekarang setelah konfigurasi JSON terhubung, kita dapat mulai menambahkan kode untuk menggunakan akun penyimpanan.