Rychlý start: Vytvoření javascriptové aplikace s konfigurací Aplikace Azure
V tomto rychlém startu použijete Aplikace Azure Configuration k centralizaci úložiště a správy nastavení aplikace pomocí klientské knihovny zprostředkovatele Aplikace Azure Configuration JavaScriptu.
Zprostředkovatel konfigurace aplikací pro JavaScript je založený na sadě Azure SDK pro JavaScript a je navržený tak, aby se snadněji používal s bohatšími funkcemi.
Umožňuje přístup k hodnotám klíčů v App Configuration jako objektu Map
.
Nabízí funkce, jako je složení konfigurace z více popisků, oříznutí předpony klíčů, automatické rozlišení odkazů služby Key Vault a mnoho dalších.
V tomto kurzu se například dozvíte, jak používat zprostředkovatele JavaScriptu v aplikaci Node.js.
Požadavky
- Účet Azure s aktivním předplatným. Vytvořte si ho zdarma.
- App Configuration Store. Vytvořte úložiště.
- Verze LTS Node.js. Informace o instalaci Node.js přímo ve Windows nebo používání Subsystém Windows pro Linux (WSL) najdete v tématu Začínáme s Node.js
Přidání hodnot klíče
Do app Configuration Storu přidejte následující hodnoty klíčů. 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.
Key | Hodnota | Typ obsahu |
---|---|---|
message | Zpráva z konfigurace Aplikace Azure | Nechejte prázdné. |
app.greeting | Hello World | Nechejte prázdné. |
app.json | {"myKey":"myValue"} | application/json |
Vytvoření konzolové aplikace Node.js
V tomto kurzu vytvoříte konzolovou aplikaci Node.js a načtete data z app Configuration Storu.
Vytvořte nový adresář pro projekt s názvem app-configuration-quickstart.
mkdir app-configuration-quickstart
Přepněte do nově vytvořeného adresáře app-configuration-quickstart .
cd app-configuration-quickstart
Pomocí příkazu nainstalujte zprostředkovatele
npm install
konfigurace Aplikace Azure.npm install @azure/app-configuration-provider
Připojení ke službě App Configuration Store
Následující příklady ukazují, jak načíst konfigurační data z Aplikace Azure Konfigurace a využít je ve vaší aplikaci.
Ve výchozím nastavení se hodnoty klíč-hodnoty načítají jako Map
objekt, což umožňuje přístup ke každé hodnotě klíče pomocí jeho celého názvu klíče.
Pokud však vaše aplikace používá objekty konfigurace, můžete použít constructConfigurationObject
pomocné rozhraní API, které vytvoří objekt konfigurace na základě hodnot klíčů načtených z Aplikace Azure Configuration.
V adresáři app-configuration-quickstart vytvořte soubor s názvem app.js a zkopírujte kód z každé ukázky.
Ukázka 1: Načtení hodnot klíče s výchozím selektorem
V této ukázce se připojíte ke konfiguraci Aplikace Azure pomocí připojovací řetězec a načtete hodnoty klíče bez zadání pokročilých možností. Ve výchozím nastavení načte všechny hodnoty klíče bez popisku.
const { load } = require("@azure/app-configuration-provider");
const connectionString = process.env.AZURE_APPCONFIG_CONNECTION_STRING;
async function run() {
console.log("Sample 1: Load key-values with default selector");
// Connect to Azure App Configuration using a connection string and load all key-values with null label.
const settings = await load(connectionString);
console.log("---Consume configuration as a Map---");
// Find the key "message" and print its value.
console.log('settings.get("message"):', settings.get("message")); // settings.get("message"): Message from Azure App Configuration
// Find the key "app.greeting" and print its value.
console.log('settings.get("app.greeting"):', settings.get("app.greeting")); // settings.get("app.greeting"): Hello World
// Find the key "app.json" whose value is an object.
console.log('settings.get("app.json"):', settings.get("app.json")); // settings.get("app.json"): { myKey: 'myValue' }
console.log("---Consume configuration as an object---");
// Construct configuration object from loaded key-values, by default "." is used to separate hierarchical keys.
const config = settings.constructConfigurationObject();
// Use dot-notation to access configuration
console.log("config.message:", config.message); // config.message: Message from Azure App Configuration
console.log("config.app.greeting:", config.app.greeting); // config.app.greeting: Hello World
console.log("config.app.json:", config.app.json); // config.app.json: { myKey: 'myValue' }
}
run().catch(console.error);
Ukázka 2: Načtení konkrétních hodnot klíče pomocí selektorů
V této ukázce načtete podmnožinu hodnot klíče zadáním selectors
možnosti.
Načtou se jenom klíče začínající na aplikaci.
Všimněte si, že můžete zadat více selektorů na základě vašich potřeb, z nichž každá má keyFilter
a labelFilter
má vlastnosti.
const { load } = require("@azure/app-configuration-provider");
const connectionString = process.env.AZURE_APPCONFIG_CONNECTION_STRING;
async function run() {
console.log("Sample 2: Load specific key-values using selectors");
// Load a subset of keys starting with "app." prefix.
const settings = await load(connectionString, {
selectors: [{
keyFilter: "app.*"
}],
});
console.log("---Consume configuration as a Map---");
// The key "message" is not loaded as it does not start with "app."
console.log('settings.has("message"):', settings.has("message")); // settings.has("message"): false
// The key "app.greeting" is loaded
console.log('settings.has("app.greeting"):', settings.has("app.greeting")); // settings.has("app.greeting"): true
// The key "app.json" is loaded
console.log('settings.has("app.json"):', settings.has("app.json")); // settings.has("app.json"): true
console.log("---Consume configuration as an object---");
// Construct configuration object from loaded key-values
const config = settings.constructConfigurationObject({ separator: "." });
// Use dot-notation to access configuration
console.log("config.message:", config.message); // config.message: undefined
console.log("config.app.greeting:", config.app.greeting); // config.app.greeting: Hello World
console.log("config.app.json:", config.app.json); // config.app.json: { myKey: 'myValue' }
}
run().catch(console.error);
Ukázka 3: Načtení hodnot klíčů a oříznutí předpony z klíčů
V této ukázce načtete hodnoty klíče s možností trimKeyPrefixes
.
Po načtení hodnot klíčů se předpona "aplikace" oříznou ze všech klíčů.
To je užitečné, když chcete načíst konfigurace specifické pro vaši aplikaci filtrováním na určitou předponu klíče, ale nechcete, aby kód přenášel předponu pokaždé, když přistupuje ke konfiguraci.
const { load } = require("@azure/app-configuration-provider");
const connectionString = process.env.AZURE_APPCONFIG_CONNECTION_STRING;
async function run() {
console.log("Sample 3: Load key-values and trim prefix from keys");
// Load all key-values with no label, and trim "app." prefix from all keys.
const settings = await load(connectionString, {
selectors: [{
keyFilter: "app.*"
}],
trimKeyPrefixes: ["app."]
});
console.log("---Consume configuration as a Map---");
// The original key "app.greeting" is trimmed as "greeting".
console.log('settings.get("greeting"):', settings.get("greeting")); // settings.get("greeting"): Hello World
// The original key "app.json" is trimmed as "json".
console.log('settings.get("json"):', settings.get("json")); // settings.get("json"): { myKey: 'myValue' }
console.log("---Consume configuration as an object---");
// Construct configuration object from loaded key-values with trimmed keys.
const config = settings.constructConfigurationObject();
// Use dot-notation to access configuration
console.log("config.greeting:", config.greeting); // config.greeting: Hello World
console.log("config.json:", config.json); // config.json: { myKey: 'myValue' }
}
run().catch(console.error);
Spuštění aplikace
Nastavte proměnnou prostředí s názvem AZURE_APPCONFIG_CONNECTION_STRING a nastavte ji na připojovací řetězec vašeho App Configuration Storu. Na příkazovém řádku spusťte následující příkaz:
Pokud chcete aplikaci spustit místně pomocí příkazového řádku Windows, spusťte následující příkaz a nahraďte
<app-configuration-store-connection-string>
připojovací řetězec úložiště konfigurace aplikací:setx AZURE_APPCONFIG_CONNECTION_STRING "<app-configuration-store-connection-string>"
Vytiskněte hodnotu proměnné prostředí, abyste ověřili, že je správně nastavená, pomocí následujícího příkazu.
Pomocí příkazového řádku systému Windows restartujte příkazový řádek, aby se změna projevila, a spusťte následující příkaz:
echo %AZURE_APPCONFIG_CONNECTION_STRING%
Jakmile je proměnná prostředí správně nastavená, spusťte aplikaci místně spuštěním následujícího příkazu:
node app.js
Pro každou ukázku byste měli vidět následující výstup:
Ukázka 1
Sample 1: Load key-values with default selector ---Consume configuration as a Map--- settings.get("message"): Message from Azure App Configuration settings.get("app.greeting"): Hello World settings.get("app.json"): { myKey: 'myValue' } ---Consume configuration as an object--- config.message: Message from Azure App Configuration config.app.greeting: Hello World config.app.json: { myKey: 'myValue' }
Ukázka 2
Sample 2: Load specific key-values using selectors ---Consume configuration as a Map--- settings.has("message"): false settings.has("app.greeting"): true settings.has("app.json"): true ---Consume configuration as an object--- config.message: undefined config.app.greeting: Hello World config.app.json: { myKey: 'myValue' }
Ukázka 3
Sample 3: Load key-values and trim prefix from keys ---Consume configuration as a Map--- settings.get("greeting"): Hello World settings.get("json"): { myKey: 'myValue' } ---Consume configuration as an object--- config.greeting: Hello World config.json: { myKey: 'myValue' }
Vyčištění prostředků
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í. Ujistěte se, že omylem neodstraníte nesprávnou skupinu prostředků nebo 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ů.
- Přihlaste se k webu Azure Portal a vyberte skupiny prostředků.
- Do pole Filtrovat podle názvu zadejte název vaší skupiny prostředků.
- V seznamu výsledků vyberte název skupiny prostředků, abyste zobrazili přehled.
- Vyberte Odstranit skupinu prostředků.
- Zobrazí se výzva k potvrzení odstranění skupiny prostředků. Potvrďte název skupiny prostředků a vyberte Odstranit.
Po chvíli se skupina prostředků a všechny její prostředky odstraní.
Další kroky
V tomto rychlém startu jste vytvořili nový obchod App Configuration a dozvěděli jste se, jak přistupovat k hodnotám klíčů pomocí zprostředkovatele JavaScriptu konfigurace aplikace v aplikaci Node.js. Pokud chcete zjistit, jak nakonfigurovat aplikaci tak, aby dynamicky aktualizovala nastavení konfigurace, pokračujte dalším kurzem.