Wprowadzenie do usługi Azure Blob Storage i języka Go
W tym artykule pokazano, jak nawiązać połączenie z usługą Azure Blob Storage przy użyciu modułu klienta usługi Azure Blob Storage dla języka Go. Po nawiązaniu połączenia skorzystaj z przewodników dla deweloperów , aby dowiedzieć się, jak kod może działać na kontenerach, obiektach blob i funkcjach usługi Blob Storage.
Jeśli chcesz zacząć od kompletnego przykładu, zobacz Szybki start: biblioteka klienta usługi Azure Blob Storage dla języka Go.
Dokumentacja interfejsu API — pakiet | kodu | źródłowego biblioteki (pkg.go.dev)
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz jedną bezpłatnie
- Konto usługi Azure Storage — tworzenie konta magazynu
- Przejdź do wersji 1.18 lub nowszej
konfigurowanie projektu
Ta sekcja przeprowadzi Cię przez proces przygotowywania projektu do pracy z modułem klienta usługi Azure Blob Storage dla języka Go.
Z poziomu programu GOPATH zainstaluj moduł azblob przy użyciu następującego polecenia:
go get github.com/Azure/azure-sdk-for-go/sdk/storage/azblob
Aby uwierzytelnić się przy użyciu identyfikatora Entra firmy Microsoft (zalecane), zainstaluj azidentity
moduł przy użyciu następującego polecenia:
go get github.com/Azure/azure-sdk-for-go/sdk/azidentity
Następnie otwórz plik kodu i dodaj niezbędne ścieżki importu. W tym przykładzie dodamy następujący kod do pliku .go :
import (
"github.com/Azure/azure-sdk-for-go/sdk/storage/azblob"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
)
Informacje o module klienta obiektów blob:
- azblob: zawiera metody, których można użyć do obsługi usług, kontenerów i obiektów blob.
Autoryzowanie dostępu i nawiązywanie połączenia z usługą Blob Storage
Aby połączyć aplikację z usługą Blob Storage, utwórz obiekt klienta przy użyciu polecenia azblob. NewClient. Ten obiekt jest punktem wyjścia do interakcji z zasobami danych na poziomie konta magazynu. Można go użyć do działania na koncie magazynu i jego kontenerach.
Aby dowiedzieć się więcej na temat tworzenia obiektów klienta i zarządzania nimi, w tym najlepszych rozwiązań, zobacz Tworzenie obiektów klienta korzystających z zasobów danych i zarządzanie nimi.
Obiekt klienta można autoryzować przy użyciu tokenu autoryzacji entra firmy Microsoft (zalecane), klucza dostępu do konta lub sygnatury dostępu współdzielonego (SAS).
Aby autoryzować za pomocą identyfikatora Entra firmy Microsoft, musisz użyć podmiotu zabezpieczeń. Poniższe artykuły zawierają wskazówki dotyczące różnych scenariuszy uwierzytelniania:
- Uwierzytelnianie w środowiskach deweloperskich
- Uwierzytelnianie w aplikacjach hostowanych na platformie Azure
- Uwierzytelnianie przy użyciu jednostki usługi
Autoryzowanie dostępu przy użyciu elementu DefaultAzureCredential
Łatwym i bezpiecznym sposobem autoryzowania dostępu i nawiązywania połączenia z usługą Blob Storage jest uzyskanie tokenu OAuth przez utworzenie wystąpienia DefaultAzureCredential . Następnie możesz użyć tego poświadczenia, aby utworzyć obiekt klienta przy użyciu polecenia 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
}
Kompilowanie aplikacji
Podczas tworzenia aplikacji do pracy z zasobami danych w usłudze Azure Blob Storage kod wchodzi głównie w interakcję z trzema typami zasobów: kontami magazynu, kontenerami i obiektami blob. Aby dowiedzieć się więcej o tych typach zasobów, sposobie ich powiązania ze sobą i sposobie interakcji aplikacji z zasobami, zobacz Omówienie sposobu interakcji aplikacji z zasobami danych usługi Blob Storage.
W poniższych przewodnikach przedstawiono sposób uzyskiwania dostępu do danych i wykonywania określonych akcji przy użyciu modułu klienta usługi Azure Blob Storage dla języka Go:
Przewodnik | opis |
---|---|
Konfigurowanie zasad ponawiania prób | Zaimplementuj zasady ponawiania dla operacji klienta. |
Kopiowanie obiektów blob | Skopiuj obiekt blob z jednej lokalizacji do innej. |
Tworzenie kontenera | Tworzenie kontenerów. |
Usuwanie i przywracanie obiektów blob | Usuń obiekty blob i jeśli włączono usuwanie nietrwałe, przywróć usunięte obiekty blob. |
Usuwanie i przywracanie kontenerów | Usuń kontenery, a jeśli włączono usuwanie nietrwałe, przywróć usunięte kontenery. |
Pobieranie obiektów blob | Pobierz obiekty blob przy użyciu ciągów, strumieni i ścieżek plików. |
Znajdowanie obiektów blob przy użyciu tagów | Ustawianie i pobieranie tagów oraz używanie tagów do znajdowania obiektów blob. |
Wyświetlanie listy obiektów blob | Wyświetlanie listy obiektów blob na różne sposoby. |
Wyświetlanie listy kontenerów | Wyświetlanie listy kontenerów na koncie i różnych dostępnych opcji dostosowywania listy. |
Zarządzanie właściwościami i metadanymi (obiektami blob) | Zarządzanie właściwościami i metadanymi kontenera. |
Zarządzanie właściwościami i metadanymi (kontenerami) | Zarządzanie właściwościami i metadanymi kontenera. |
Przekazywanie obiektów blob | Dowiedz się, jak przekazywać obiekty blob przy użyciu ciągów, strumieni, ścieżek plików i innych metod. |
Uwaga
Przykłady kodu w tym przewodniku ułatwiają rozpoczęcie pracy z usługami Azure Blob Storage i Go. Należy zmodyfikować obsługę błędów i Context
wartości, aby spełniały potrzeby aplikacji.