Megosztás a következőn keresztül:


Csatlakozás a Media Services v3 API-hoz – Node.js

Media Services embléma v3


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

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

  1. Hozzon létre egy package.json fájlt a kedvenc szerkesztőjével.
  2. 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

  1. Indítsa el a Visual Studio Code-ot a gyökérmappából.
cd media-services-v3-node-tutorials
code .
  1. Telepítse a package.json fájlban használt csomagokat egy terminálról
npm install
  1. 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.

  2. Könyvtár módosítása a HelloWorld-ListAssets mappába

cd HelloWorld-ListAssets
  1. 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

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: