Questa pagina è riservata ai clienti esistenti del servizio S3 Glacier che utilizzano Vaults e l'originale del 2012. REST API
Se stai cercando soluzioni di archiviazione, ti consigliamo di utilizzare le classi di storage S3 Glacier in Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Per ulteriori informazioni su queste opzioni di storage, consulta le classi di storage S3 Glacier e lo storage dei dati a lungo termine con le classi
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo di AWS SDK for .NET con Amazon S3 Glacier
L'API AWS SDK for .NET è disponibile in AWSSDK.dll
. Per informazioni sul download di AWS SDK for .NET, consulta Librerie e codice di esempio
Nota
Queste API di basso e alto livello forniscono client sicuri per l'accesso a S3 Glacier. Come best practice, le tue applicazioni devono creare un client e riutilizzarlo tra i thread.
Argomenti
Utilizzo dell'API di basso livello
La classe AmazonGlacierClient
di basso livello fornisce tutti i metodi che eseguono la mappatura alle operazioni REST sottostanti di Amazon S3 Glacier (S3 Glacier) (Documentazione di riferimento dell'API per Amazon S3 Glacier). Quando chiami uno di questi metodi, devi creare un oggetto di richiesta corrispondente e fornire un oggetto di risposta in cui il metodo può restituire una risposta di S3 Glacier all'operazione.
Ad esempio, la classe AmazonGlacierClient
fornisce il metodo CreateVault
per creare un vault. Questo metodo esegue la mappatura all'operazione REST Create Vault sottostante (vedi Create Vault (PUT vault)). Per utilizzare questo metodo, devi creare istanze delle classi CreateVaultRequest
e CreateVaultResponse
per fornire informazioni sulla richiesta e ricevere una risposta di S3 Glacier come mostrato nel seguente frammento di codice C#:
AmazonGlacierClient client; client = new AmazonGlacierClient(Amazon.RegionEndpoint.USEast1); CreateVaultRequest request = new CreateVaultRequest() { AccountId = "-", VaultName = "*** Provide vault name ***" }; CreateVaultResponse response = client.CreateVault(request);
Tutti gli esempi di basso livello nella guida utilizzano questo modello.
Nota
Il segmento di codice precedente specifica AccountId
quando si crea la richiesta. Tuttavia, quando si utilizza il kit AWS SDK for .NET, il valore AccountId
nella richiesta è facoltativo e di conseguenza tutti gli esempi di basso livello in questa guida non impostano tale valore. AccountId
è l'ID di Account AWS. Questo valore deve corrispondere all'ID dell'Account AWS associato alle credenziali utilizzate per firmare la richiesta. Puoi specificare l'ID Account AWS o eventualmente un "-" (trattino), nel qual caso S3 Glacier utilizza l'ID Account AWS associato alle credenziali utilizzate per firmare la richiesta. Se specifichi l'ID del tuo account, non includere trattini nell'ID. Quando utilizzi il kit AWS SDK for .NET, se non fornisci l'ID dell'account, la libreria lo imposta su "-".
Utilizzo dell'API di alto livello
Per semplificare ulteriormente lo sviluppo di applicazioni, il kit AWS SDK for .NET fornisce la classe ArchiveTransferManager
che implementa un'astrazione di livello più alto per alcuni dei metodi nell'API di basso livello. Questa classe offre metodi utili, ad esempio Upload
e Download
, per le operazioni di archivio.
Ad esempio, il frammento di codice C# seguente utilizza il metodo Upload
di alto livello per caricare un archivio.
string vaultName = "examplevault"; string archiveToUpload = "c:\folder\exampleArchive.zip"; var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USEast1); string archiveId = manager.Upload(vaultName, "archive description", archiveToUpload).ArchiveId;
Nota che qualsiasi operazione eseguita viene applicata alla regione AWS che hai specificato alla creazione dell'oggetto ArchiveTransferManager
. Tutti gli esempi di alto livello in questa guida utilizzano questo pattern.
Nota
La classe ArchiveTransferManager
di alto livello necessita ancora del client AmazonGlacierClient
di basso livello, che puoi passare in modo esplicito, altrimenti ArchiveTransferManager
crea il client.
Esecuzione di esempi di codice
Il modo più semplice di iniziare a utilizzare i codici di esempio .NET è installare l'AWS SDK for .NET. Per ulteriori informazioni, consulta Amazon SDK per .NET
La procedura seguente ti consente di testare gli esempi di codice forniti in questa guida.
1 |
Crea un profilo per le credenziali AWS, come descritto nell'argomento di Amazon SDK per .NET Configurazione delle credenziali AWS. |
2 |
Crea un nuovo progetto di Visual Studio utilizzando il modello Progetto AWS vuoto. |
3 |
Sostituire il codice nel file di progetto, |
4 |
Esegui il codice. Verificare l'avvenuta creazione dell'oggetto utilizzando la AWS Management Console. Per ulteriori informazioni su AWS Management Console, visita https://aws.amazon.com/console/ |
Impostazione dell'endpoint
Per impostazione predefinita, AWS SDK for .NET imposta l'endpoint sulla regione Stati Uniti occidentali (Oregon) (https://glacier.us-west-2.amazonaws.com
). Puoi impostare l'endpoint su altre regioni AWS come mostrato nei frammenti di codice C# seguenti.
Il frammento seguente mostra come impostare l'endpoint sulla regione Stati Uniti occidentali (Oregon) (us-west-2
) nell'API di basso livello.
AmazonGlacierClient client = new AmazonGlacierClient(Amazon.RegionEndpoint.USWest2);
Il frammento seguente mostra come impostare l'endpoint sulla regione Stati Uniti occidentali (Oregon) nell'API di alto livello.
var manager = new ArchiveTransferManager(Amazon.RegionEndpoint.USWest2);
Per un elenco corrente delle regioni AWS e degli endpoint supportati, consulta Accesso ad Amazon S3 Glacier.