Aan de slag met Azure Blob Storage en Go
In dit artikel leest u hoe u verbinding maakt met Azure Blob Storage met behulp van de Azure Blob Storage-clientmodule voor Go. Zodra u verbinding hebt gemaakt, gebruikt u de ontwikkelaarshandleidingen om te leren hoe uw code kan werken op containers, blobs en functies van de Blob Storage-service.
Als u wilt beginnen met een volledig voorbeeld, raadpleegt u quickstart: Azure Blob Storage-clientbibliotheek voor Go.
Broncodepakket voor API-referentiedocumentatiebibliotheek | | (pkg.go.dev)
Vereisten
- Azure-abonnement: u kunt een gratis abonnement nemen
- Azure Storage-account: maak een opslagaccount
- Go 1.18+
Uw project instellen
In deze sectie wordt uitgelegd hoe u een project voorbereidt voor gebruik met de Azure Blob Storage-clientmodule voor Go.
Installeer vanuit uw GOPATH de azblob-module met behulp van de volgende opdracht:
go get github.com/Azure/azure-sdk-for-go/sdk/storage/azblob
Als u wilt verifiëren met Microsoft Entra ID (aanbevolen), installeert u de azidentity
module met behulp van de volgende opdracht:
go get github.com/Azure/azure-sdk-for-go/sdk/azidentity
Open vervolgens het codebestand en voeg de benodigde importpaden toe. In dit voorbeeld voegen we het volgende toe aan ons GO-bestand :
import (
"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
)
Informatie over de Blob-clientmodule:
- azblob: Bevat de methoden die u kunt gebruiken om te werken op de service, containers en blobs.
Toegang autoriseren en verbinding maken met Blob Storage
Als u een app wilt verbinden met Blob Storage, maakt u een clientobject met behulp van azblob. NewClient. Dit object is het startpunt om te communiceren met gegevensbronnen op het niveau van het opslagaccount. U kunt het gebruiken om te werken op het opslagaccount en de bijbehorende containers.
Zie Clientobjecten maken en beheren die interactie hebben met gegevensbronnen voor meer informatie over het maken en beheren van clientobjecten, inclusief aanbevolen procedures.
U kunt een clientobject autoriseren met behulp van een Microsoft Entra-autorisatietoken (aanbevolen), een toegangssleutel voor een account of een SAS (Shared Access Signature).
Als u wilt autoriseren met Microsoft Entra-id, moet u een beveiligingsprincipaal gebruiken. De volgende artikelen bevatten richtlijnen voor verschillende verificatiescenario's:
- Verificatie in ontwikkelomgevingen
- Verificatie in door Azure gehoste apps
- Verificatie met een service-principal
Toegang autoriseren met DefaultAzureCredential
Een eenvoudige en veilige manier om toegang te verlenen en verbinding te maken met Blob Storage is door een OAuth-token te verkrijgen door een DefaultAzureCredential-exemplaar te maken. Vervolgens kunt u die referentie gebruiken om het clientobject te maken met behulp van azblob. NewClient.
func getServiceClientTokenCredential(accountURL string) *azblob.Client {
// Create a new service client with token credential
credential, err := azidentity.NewDefaultAzureCredential(nil)
handleError(err)
client, err := azblob.NewClient(accountURL, credential, nil)
handleError(err)
return client
}
Uw app compileren
Wanneer u apps bouwt om te werken met gegevensresources in Azure Blob Storage, communiceert uw code voornamelijk met drie resourcetypen: opslagaccounts, containers en blobs. Voor meer informatie over deze resourcetypen, hoe deze zich verhouden tot elkaar en hoe apps communiceren met resources, raadpleegt u Begrijpen hoe apps communiceren met Blob Storage-gegevensresources.
De volgende handleidingen laten zien hoe u toegang krijgt tot gegevens en specifieke acties uitvoert met behulp van de Azure Blob Storage-clientmodule voor Go:
Guide | Beschrijving |
---|---|
Beleid voor opnieuw proberen configureren | Implementeer beleid voor opnieuw proberen voor clientbewerkingen. |
Blobs kopiëren | Kopieer een blob van de ene locatie naar de andere. |
Een container maken | Containers maken. |
Blobs verwijderen en herstellen | Verwijder blobs en als voorlopig verwijderen is ingeschakeld, herstelt u verwijderde blobs. |
Containers verwijderen en herstellen | Verwijder containers en als voorlopig verwijderen is ingeschakeld, herstelt u verwijderde containers. |
Blobs downloaden | Download blobs met behulp van tekenreeksen, streams en bestandspaden. |
Blobs zoeken met behulp van tags | Stel tags in en haal ze op en gebruik tags om blobs te zoeken. |
Blobs vermelden | Geef blobs op verschillende manieren weer. |
Containers weergeven | Lijst met containers in een account en de verschillende opties die beschikbaar zijn om een vermelding aan te passen. |
Eigenschappen en metagegevens beheren (blobs) | Containereigenschappen en metagegevens beheren. |
Eigenschappen en metagegevens beheren (containers) | Containereigenschappen en metagegevens beheren. |
Blobs uploaden | Meer informatie over het uploaden van blobs met behulp van tekenreeksen, streams, bestandspaden en andere methoden. |
Notitie
De codevoorbeelden in deze handleiding zijn bedoeld om u te helpen aan de slag te gaan met Azure Blob Storage en Go. U moet foutafhandeling en Context
-waarden wijzigen om te voldoen aan de behoeften van uw toepassing.