Připojení k rozhraní API služby Media Services v3 – Node.js
Upozornění
Služba Azure Media Services bude vyřazena 30. června 2024. Další informace najdete v průvodci vyřazením AMS.
V tomto článku se dozvíte, jak se připojit k sadě Azure Media Services v3 node.js SDK pomocí metody přihlášení instančního objektu. Se soubory budete pracovat v úložišti ukázek media-services-v3-node-tutorials . Ukázka HelloWorld-ListAssets obsahuje kód pro připojení a výpis prostředků v účtu.
Požadavky
- Instalace editoru Visual Studio Code.
- Nainstalujte Node.js.
- Nainstalujte TypeScript.
- Vytvořte účet Media Services. Nezapomeňte si zapamatovat název skupiny prostředků a název účtu Media Services.
- Vytvořte instanční objekt pro vaši aplikaci. Viz rozhraní API pro přístup.
Tip pro profesionály! Nechte toto okno otevřené nebo zkopírujte všechno na kartě JSON do Poznámkového bloku. - Nezapomeňte získat nejnovější verzi sady AzureMediaServices SDK pro JavaScript.
Důležité
Projděte si zásady vytváření názvů ve službě Azure Media Services a seznamte se s důležitými omezeními vytváření názvů entit.
Klonování úložiště ukázek Node.JS
S některými soubory budete pracovat v ukázkách Azure. Naklonujte úložiště ukázek Node.JS.
git clone https://github.com/Azure-Samples/media-services-v3-node-tutorials.git
Instalace balíčků Node.js
Nainstalovat @azure/arm-mediaservices
npm install @azure/arm-mediaservices
V tomto příkladu použijete následující balíčky v package.json
souboru.
Balíček | Popis |
---|---|
@azure/arm-mediaservices |
Azure Media Services SDK. Pokud chcete mít jistotu, že používáte nejnovější balíček Azure Media Services, zkontrolujte npm install @azure/arm-mediaservices. |
@azure/identity |
Vyžaduje se pro ověřování Azure AD pomocí instančního objektu nebo spravované identity. |
@azure/storage-blob |
Sada SDK služby Storage. Používá se při nahrávání souborů do prostředků. |
@azure/abort-controller |
Používá se spolu s klientem úložiště k vypršení časového limitu dlouhotrvajících operací stahování. |
Vytvoření souboru package.json
- Vytvořte
package.json
soubor pomocí oblíbeného editoru. - Otevřete soubor a vložte následující kód:
{
"name": "media-services-node-sample",
"version": "0.1.0",
"description": "",
"main": "./index.ts",
"dependencies": {
"@azure/arm-mediaservices": "^10.0.0",
"@azure/abort-controller": "^1.0.2",
"@azure/identity": "^2.0.0",
"@azure/storage-blob": "^12.4.0"
}
}
Připojení ke klientovi Node.js pomocí TypeScriptu
Ukázkový soubor .env
Hodnoty ověřování budete uchovávat v souboru s názvem .env. (Správně, žádný název souboru, jenom přípona.) Přečtěte si téma Přístup k rozhraní API , kde se dozvíte, jak tyto hodnoty získat a zkopírovat. Hodnoty můžete získat z přístupové stránky rozhraní API pro váš účet Media Services na portálu nebo k získání požadovaných hodnot použít rozhraní příkazového řádku.
Zkopírujte hodnoty a vložte je do souboru s názvem .env. Soubor by měl být uložený v kořenovém adresáři vašeho pracovního úložiště.
Po vytvoření souboru .env můžete začít pracovat s ukázkami.
Spuštění ukázkové aplikace HelloWorld-ListAssets
- Spusťte Visual Studio Code z kořenové složky.
cd media-services-v3-node-tutorials
code .
- Instalace balíčků použitých v souboru package.json z terminálu
npm install
Vytvořte kopii souboru sample.env , přejmenujte ho na .env a aktualizujte hodnoty v souboru tak, aby odpovídaly informacím o vašem účtu a předplatném. Možná budete muset nejprve shromáždit tyto informace z Azure Portal.
Změna adresáře do složky HelloWorld-ListAssets
cd HelloWorld-ListAssets
- Otevřete soubor list-assets.ts ve složce HelloWorld-ListAssets a stisknutím klávesy F5 v editoru Visual Studio Code spusťte skript. Pokud už máte v účtu prostředky, měl by se zobrazit seznam prostředků. Pokud je účet prázdný, zobrazí se prázdný seznam.
Pokud chcete rychle zobrazit seznam prostředků, nahrajte pomocí portálu několik videosouborů. Každý z nich se automaticky vytvoří a opětovným spuštěním tohoto skriptu se pak vrátí jejich názvy.
Bližší pohled na ukázku HelloWorld-ListAssets
Ukázka HelloWorld-ListAssets ukazuje, jak se připojit ke klientovi Media Services pomocí instančního objektu a vypsat prostředky v účtu. Podrobné vysvětlení toho, co kód dělá, najdete v komentářích v kódu.
import { DefaultAzureCredential } from "@azure/identity";
import {
AzureMediaServices
} from '@azure/arm-mediaservices';
// Load the .env file if it exists
import * as dotenv from "dotenv";
dotenv.config();
export async function main() {
// Copy the samples.env file and rename it to .env first, then populate it's values with the values obtained
// from your Media Services account's API Access page in the Azure portal.
const clientId: string = process.env.AADCLIENTID as string;
const secret: string = process.env.AADSECRET as string;
const tenantDomain: string = process.env.AADTENANTDOMAIN as string;
const subscriptionId: string = process.env.SUBSCRIPTIONID as string;
const resourceGroup: string = process.env.RESOURCEGROUP as string;
const accountName: string = process.env.ACCOUNTNAME as string;
// This sample uses the default Azure Credential object, which relies on the environment variable settings.
// If you wish to use User assigned managed identity, see the samples for v2 of @azure/identity
// Managed identity authentication is supported via either the DefaultAzureCredential or the ManagedIdentityCredential classes
// https://learn.microsoft.com/javascript/api/overview/azure/identity-readme?view=azure-node-latest
// See the following examples for how to authenticate in Azure with managed identity
// https://github.com/Azure/azure-sdk-for-js/blob/@azure/identity_2.0.1/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-in-azure-with-managed-identity
// const credential = new ManagedIdentityCredential("<USER_ASSIGNED_MANAGED_IDENTITY_CLIENT_ID>");
const credential = new DefaultAzureCredential();
let mediaServicesClient = new AzureMediaServices(credential, subscriptionId)
// List Assets in Account
console.log("Listing assets in account:")
for await (const asset of mediaServicesClient.assets.list(resourceGroup, accountName, { top:1000 })){
console.log(asset.name);
}
}
main().catch((err) => {
console.error("Error running sample:", err.message);
});
Další ukázky
V úložišti je k dispozici mnoho dalších ukázek. Nejnovější aktualizované ukázky najdete v souboru readme.
Reference pro vývojáře v Jazyce JavaScript/TypeScript pro Media Services
- npm install @azure/arm-mediaservices
- Referenční dokumentace k modulům Azure Media Services pro Node.js
- Azure pro vývojáře & Node.js JavaScriptu
- Media Services source code in the @azure/azure-sdk-for-js Git Hub repo
- Dokumentace k balíčkům Azure pro vývojáře Node.js
- Koncepty služby Media Services
- Azure pro vývojáře & Node.js JavaScriptu
- Media Services source code in the @azure/azure-sdk-for-js repo
Získání nápovědy a podpory
Media Services můžete kontaktovat s dotazy nebo sledovat naše aktualizace jedním z následujících způsobů:
- Q & A
-
Stack Overflow Označit otázky pomocí
azure-media-services
. - @MSFTAzureMedia nebo použijte @AzureSupport a požádejte o podporu.
- Otevřete lístek podpory prostřednictvím Azure Portal.