Csatlakozás a Media Services v3 API-hoz – Node.js
Figyelmeztetés
Az Azure Media Services 2024. június 30-án megszűnik. További információkért lásd az AMS kivezetési útmutatót.
Ez a cikk bemutatja, hogyan csatlakozhat az Azure Media Services v3 node.js SDK-hoz a szolgáltatásnév bejelentkezési módszerével. A fájlokat a media-services-v3-node-tutorials mintaadattárban fogja használni. A HelloWorld-ListAssets minta tartalmazza a fiókban lévő eszközök összekapcsolására és listázására szolgáló kódot.
Előfeltételek
- A Visual Studio Code telepítése.
- Telepítse Node.js.
- Telepítse a TypeScriptet.
- Hozzon létre egy Media Services-fiókot. Ne felejtse el megjegyezni az erőforráscsoport nevét és a Media Services-fiók nevét.
- Hozzon létre egy szolgáltatásnevet az alkalmazáshoz. Lásd : hozzáférési API-k.
Profi tipp! Tartsa nyitva ezt az ablakot, vagy másolja a JSON lapon lévő összes elemet a Jegyzettömbbe. - Mindenképpen szerezze be a JavaScripthez készült AzureMediaServices SDK legújabb verzióját.
Fontos
Az entitásokra vonatkozó fontos elnevezési korlátozások megismeréséhez tekintse át az Azure Media Services elnevezési konvencióit .
A Node.JS-minták adattárának klónozása
Az Azure-mintákban néhány fájllal fog dolgozni. Klónozza a Node.JS mintaadattárat.
git clone https://github.com/Azure-Samples/media-services-v3-node-tutorials.git
A Node.js-csomagok telepítése
Telepíteni @azure/arm-mediaservices
npm install @azure/arm-mediaservices
Ebben a példában a következő csomagokat fogja használni a package.json
fájlban.
Csomag | Description |
---|---|
@azure/arm-mediaservices |
Azure Media Services SDK. Ha ellenőrizni szeretné, hogy a legújabb Azure Media Services-csomagot használja-e, ellenőrizze a következőt npm install @azure/arm-mediaservices: . |
@azure/identity |
Szolgáltatásnévvel vagy felügyelt identitással történő hitelesítéshez szükséges Azure AD |
@azure/storage-blob |
Storage SDK. Fájlok objektumokba való feltöltéséhez használatos. |
@azure/abort-controller |
A tárolóügyféllel együtt a hosszú ideig futó letöltési műveletek időtúllépéséhez használható |
A package.json fájl létrehozása
- Hozzon létre egy
package.json
fájlt a kedvenc szerkesztőjével. - Nyissa meg a fájlt, és illessze be a következő kódot:
{
"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"
}
}
Csatlakozás Node.js ügyfélhez a TypeScript használatával
Minta .env fájl
A hitelesítési értékeket egy .env nevű fájlban fogja tárolni. (Így van, nincs fájlnév, csak a bővítmény.) Olvassa el az Access the API (API elérése ) című cikket, amelyből megtudhatja, hogyan szerezheti be és másolhatja le ezeket az értékeket. Az értékeket lekérheti a Media Services-fiók API Access oldalán a portálon, vagy a parancssori felülettel lekérheti a szükséges értékeket.
Másolja és illessze be az értékeket egy .env nevű fájlba. A fájlt a munkaadattár gyökerében kell tárolni.
Az .env fájl létrehozása után megkezdheti a minták használatát.
A HelloWorld-ListAssets mintaalkalmazás futtatása
- Indítsa el a Visual Studio Code-ot a gyökérmappából.
cd media-services-v3-node-tutorials
code .
- Telepítse a package.json fájlban használt csomagokat egy terminálról
npm install
Készítsen másolatot a sample.env fájlról, nevezze át .env névre, és frissítse a fájl értékeit a fiók és az előfizetés adatainak megfelelően. Előfordulhat, hogy először a Azure Portal kell összegyűjtenie ezeket az adatokat.
Könyvtár módosítása a HelloWorld-ListAssets mappába
cd HelloWorld-ListAssets
- Nyissa meg a list-assets.ts fájlt a HelloWorld-ListAssets mappában, és nyomja le az F5 billentyűt a Visual Studio code-ban a szkript futtatásának megkezdéséhez. Megjelenik az eszközök listája, ha már vannak eszközei a fiókban. Ha a fiók üres, egy üres lista jelenik meg.
A felsorolt objektumok gyors megtekintéséhez a portálon töltsön fel néhány videófájlt. Az eszközök mindegyike automatikusan létrejön, és a szkript ismételt futtatása után a rendszer visszaadja a nevüket.
Közelebbi pillantás a HelloWorld-ListAssets mintára
A HelloWorld-ListAssets minta bemutatja, hogyan csatlakozhat a Media Services-ügyfélhez egy szolgáltatásnévvel, és hogyan listázhatja az eszközök listáját a fiókban. A kódban található megjegyzésekben részletes magyarázatot talál a teendőkre.
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);
});
További példák
Az adattárban számos további minta érhető el. Tekintse át az olvasófájlt a legújabb frissített mintákhoz.
A Media Services JavaScript-/TypeScript-fejlesztőinek referenciái
- npm install @azure/arm-mediaservices
- Referenciadokumentáció az Azure Media Services-modulokhoz Node.js
- Az Azure for JavaScript & Node.js fejlesztők
- Media Services source code in the @azure/azure-sdk-for-js Git Hub repo
- Az Azure Package dokumentációja Node.js fejlesztőknek
- Media Services-fogalmak
- Az Azure for JavaScript & Node.js fejlesztők
- Media Services source code in the @azure/azure-sdk-for-js repo
Súgó és támogatás
Kérdéseket tehet fel a Media Serviceshez, vagy kövesse a frissítéseket az alábbi módszerek egyikével:
- Q & A
-
Stack Overflow. Kérdések címkézése a következővel:
azure-media-services
. - @MSFTAzureMediavagy @AzureSupport használatával kérjen támogatást.
- Nyisson meg egy támogatási jegyet a Azure Portal keresztül.