Erste Schritte mit Azure Blob Storage und JavaScript oder TypeScript
In diesem Artikel erfahren Sie, wie Sie mithilfe der Azure Blob Storage-Clientbibliothek für JavaScript eine Verbindung mit Azure Blob Storage herstellen. Verwenden Sie nach der Verbindung die Entwicklerhandbücher, um zu erfahren, wie Ihr Code mit Containern, Blobs und Funktionen des Blob Storage-Diensts arbeiten kann.
Wenn Sie mit einem vollständigen Beispiel beginnen möchten, lesen Sie den Schnellstart zur Clientbibliothek für JavaScript oder TypeScript.
API-Referenz | Paket (npm) | Quellcode der Bibliothek | Beispiele | Feedback geben
Voraussetzungen
- Azure-Abonnement – Erstellen eines kostenlosen Kontos
- Azure Storage-Konto – Erstellen eines Speicherkontos
- Node.js LTS
- TypeScript, falls zutreffend
- Für Clientanwendungen (Browser) benötigen Sie Bündelungstools.
Einrichten des Projekts
In diesem Abschnitt wird beschrieben, wie ein Projekt zur Verwendung mit der Azure Blob Storage-Clientbibliothek für JavaScript vorbereitet wird.
Öffnen Sie eine Eingabeaufforderung, und navigieren Sie zum Projektordner. Ändern Sie <project-directory>
in den Ordnernamen:
cd <project-directory>
Wenn Sie noch keine package.json
-Datei in Ihrem Verzeichnis haben, initialisieren Sie das Projekt, um die Datei zu erstellen:
npm init -y
Installieren Sie in Ihrem Projektverzeichnis mithilfe der Befehle npm install
oder yarn add
Pakete für die Azure Blob Storage- und Azure Identity-Clientbibliotheken. Für kennwortlose Verbindungen mit Azure-Diensten wird das Paket @azure/identity benötigt.
npm install @azure/storage-blob @azure/identity
Autorisieren des Zugriffs und Herstellen einer Verbindung mit Blob Storage
Um eine Verbindung zwischen einer App und Blob Storage herzustellen, erstellen Sie eine Instanz der Klasse BlobServiceClient. Dieses Objekt ist Ihr Ausgangspunkt für die Interaktion mit Datenressourcen auf Speicherkontoebene. Sie können es verwenden, um das Speicherkonto und seine Container zu verwenden. Sie können den Dienstclient auch verwenden, um Containerclients oder Blobclients zu erstellen, je nachdem, mit welcher Ressource Sie arbeiten müssen.
Weitere Informationen zum Erstellen und Verwalten von Clientobjekten finden Sie unter Erstellen und Verwalten von Clientobjekten, die mit Datenressourcen interagieren.
Sie können ein BlobServiceClient
-Objekt mithilfe eines Microsoft Entra-Autorisierungstokens, eines Kontozugriffsschlüssels oder einer freigegebenen Zugriffssignatur (SHARED Access Signature, SAS) autorisieren. Um optimale Sicherheit zu gewährleisten, empfiehlt Microsoft möglichst die Verwendung von Microsoft Entra ID mit verwalteten Identitäten, um Anforderungen für Blobdaten zu autorisieren. Weitere Informationen finden Sie unter Autorisieren des Zugriffs auf Blobs mit Microsoft Entra ID.
Um mit Microsoft Entra ID zu autorisieren, müssen Sie einen Sicherheitsprinzipal verwenden. Der Typ des für Sie erforderlichen Sicherheitsprinzipals ist abhängig davon, wo Ihre App ausgeführt wird. Verwenden Sie die folgende Tabelle als Richtlinie:
Ausführungsort der App | Sicherheitsprinzipal | Leitfaden |
---|---|---|
Lokaler Computer (Entwickeln und Testen) | Dienstprinzipal | Informationen zum Registrieren der App, zum Einrichten einer Microsoft Entra-Gruppe, zum Zuweisen von Rollen und zum Konfigurieren von Umgebungsvariablen finden Sie unter Zugriff über Entwicklerdienstprinzipien autorisieren |
Lokaler Computer (Entwickeln und Testen) | Benutzeridentität | Informationen zum Einrichten einer Microsoft Entra-Gruppe, zum Zuweisen von Rollen und zum Anmelden bei Azure finden Sie unter Zugriff mit Entwickleranmeldeinformationen autorisieren |
In Azure gehostet | Verwaltete Identität | Informationen zum Aktivieren einer verwalteten Identität und zum Zuweisen von Rollen finden Sie unter Authenticating Azure-hosted apps to Azure resources with the Azure SDK for Python (Authentifizieren von Azure-gehosteten Apps bei Azure-Ressourcen mit dem Azure SDK für Python). |
Außerhalb von Azure gehostet (z. B. lokale Apps) | Dienstprinzipal | Informationen zum Registrieren der App, zum Zuweisen von Rollen und zum Konfigurieren von Umgebungsvariablen finden Sie unter Authenticate to Azure resources from Python apps hosted on-premises (Authentifizieren bei Azure-Ressourcen mit lokal gehosteten Python-Apps). |
Autorisieren des Zugriffs mithilfe von DefaultAzureCredential
Eine einfache und sichere Möglichkeit zum Autorisieren des Zugriffs und zum Herstellen einer Verbindung mit Blob Storage ist das Abrufen eines OAuth-Tokens durch Erstellung einer DefaultAzureCredential-Instanz. Anschließend können Sie mithilfe dieser Anmeldeinformationen ein BlobServiceClient
-Objekt erstellen.
Im folgenden Beispiel wird ein BlobServiceClient
-Objekt mit DefaultAzureCredential
erstellt:
const accountName = "<account-name>";
const accountURL = `https://${accountName}.blob.core.windows.net`;
const blobServiceClient = new BlobServiceClient(
accountURL,
new DefaultAzureCredential()
);
Dieses Codebeispiel kann für JavaScript- oder TypeScript-Projekte verwendet werden.
Erstellen der App
Wenn Sie Apps für die Arbeit mit Datenressourcen in Azure Blob Storage erstellen, interagiert Ihr Code primär mit drei Ressourcentypen: Speicherkonten, Container und Blobs. Weitere Informationen zu diesen Ressourcentypen, deren Beziehung zueinander und zur Interaktion von Apps mit Ressourcen finden Sie unter Grundlegendes zur Interaktion von Apps mit Blob Storage-Datenressourcen.
In den folgenden Anleitungen wird gezeigt, wie Sie mithilfe der Azure Storage-Clientbibliothek für JavaScript auf Daten zugreifen und bestimmte Aktionen ausführen:
Handbuch | Beschreibung |
---|---|
Konfigurieren einer Wiederholungsrichtlinie | Implementieren Sie Wiederholungsrichtlinien für Clientvorgänge. |
Kopieren von Blobs | Kopieren Sie ein Blob von einem Speicherort an einen anderen. |
Container erstellen | Erstellen Sie Blobcontainer. |
Erstellen einer SAS für die Benutzerdelegierung | Erstellen Sie eine SAS für die Benutzerdelegierung für einen Container oder ein Blob. |
Erstellen und Verwalten von Blobleases | Richten Sie eine Sperre für ein Blob ein, und verwalten Sie sie. |
Erstellen und Verwalten von Containerleases | Richten Sie eine Sperre für einen Container ein, und verwalten Sie sie. |
Löschen und Wiederherstellen | Löschen von Blobs und Wiederherstellen vorläufig gelöschter Blobs |
Löschen und Wiederherstellen von Containern | Löschen von Containern und Wiederherstellen vorläufig gelöschter Container. |
Herunterladen von Blobs | Herunterladen von Blobs mithilfe von Zeichenfolgen, Streams und Dateipfaden. |
Suchen von Blobs mithilfe von Tags | Festlegen und Abrufen von Tags sowie Verwenden von Tags für die Suche nach Blobs. |
Auflisten von Blobs | Auflisten von Blobs auf unterschiedliche Weise. |
Auflisten von Containern | Auflisten von Containern in einem Konto und der verschiedenen verfügbaren Optionen zum Anpassen einer Auflistung. |
Verwalten von Eigenschaften und Metadaten (Blobs) | Abrufen und Festlegen von Eigenschaften und Metadaten für Blobs. |
Verwalten von Eigenschaften und Metadaten (Container) | Abrufen und Festlegen von Eigenschaften und Metadaten für Container. |
Leistungsoptimierung für Datenübertragungen | Optimieren Sie die Leistung für Datenübertragungsvorgänge. |
Festlegen oder Ändern der Zugriffsebene eines Blobs | Legen Sie die Zugriffsebene für ein Blockblob fest, oder ändern Sie sie. |
Hochladen von Blobs | Erfahren Sie, wie Sie Blobs mithilfe von Zeichenfolgen, Streams, Dateipfaden und anderen Methoden hochladen. |