

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à.

# Caricamento di oggetti in un bucket di directory
<a name="directory-buckets-objects-upload"></a>

Dopo aver creato un bucket di directory Amazon S3, è possibile caricarvi oggetti. Gli esempi seguenti mostrano come caricare un oggetto in un bucket di directory utilizzando la console S3 e il. AWS SDKs Per informazioni sulle operazioni di caricamento di oggetti in blocco con S3 Express One Zone, consulta [Gestione degli oggetti](directory-bucket-high-performance.md#s3-express-features-object-management). 

## Utilizzo della console S3
<a name="directory-bucket-upload-console"></a>

1. Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Nel riquadro di navigazione a sinistra, scegli **Bucket di directory**.

1. Scegli il nome del bucket in cui caricare le cartelle o i file.

1. Nell'elenco **Oggetti**, scegli **Carica**.

1. Nella pagina di **caricamento**, esegui una delle seguenti operazioni: 
   + Trascina e rilascia i file e le cartelle nell'area di caricamento tratteggiata.
   + Scegli **Aggiungi file** o **Aggiungi cartella**, scegli i file o le cartelle da caricare, quindi scegli **Apri** o **Carica**.

1. In **Checksum**, scegli la **funzione Checksum** da utilizzare. 

   (Facoltativo) Se si sta caricando un singolo oggetto di dimensioni inferiori a 16 MB, si può anche specificare un valore di checksum precalcolato. Quando si fornisce un valore precalcolato, Amazon S3 lo confronta con il valore calcolato utilizzando la funzione di checksum selezionata. Se i valori non corrispondono, il caricamento non viene avviato. 

1. Le opzioni delle sezioni **Autorizzazioni ** e **Proprietà** sono impostate automaticamente come predefinite e non possono essere modificate. Blocco dell'accesso pubblico è abilitato automaticamente; Controllo delle versioni S3 e S3 Object Lock non possono essere abilitati per i bucket della directory. 

   (Facoltativo) Se desideri aggiungere metadati in coppie chiave-valore agli oggetti, espandi la sezione **Proprietà** e scegli **Aggiungi metadati** nella sezione **Metadati**.

1. Per caricare i file e le cartelle elencati, scegli **Carica**.

   Amazon S3 caricherà i tuoi oggetti e le tue cartelle. Al termine del caricamento viene visualizzato un messaggio di esito positivo nella pagina **Carica: stato**.

## Utilizzando il AWS SDKs
<a name="directory-bucket-upload-sdks"></a>

------
#### [ SDK for Java 2.x ]

**Example**  

```
public static void putObject(S3Client s3Client, String bucketName, String objectKey, Path filePath) {
       //Using File Path to avoid loading the whole file into memory
       try {
           PutObjectRequest putObj = PutObjectRequest.builder()
                   .bucket(bucketName)
                   .key(objectKey)
                   //.metadata(metadata)
                   .build();
           s3Client.putObject(putObj, filePath);               
           System.out.println("Successfully placed " + objectKey +" into bucket "+bucketName);
                                              
       }
       
       catch (S3Exception e) {
           System.err.println(e.getMessage());
           System.exit(1);
       }
}
```

------
#### [ SDK for Python ]

**Example**  

```
import boto3
import botocore
from botocore.exceptions import ClientError
    
    
def put_object(s3_client, bucket_name, key_name, object_bytes):
    """  
    Upload data to a directory bucket.
    :param s3_client: The boto3 S3 client
    :param bucket_name: The bucket that will contain the object
    :param key_name: The key of the object to be uploaded
    :param object_bytes: The data to upload
    """
    try:
        response = s3_client.put_object(Bucket=bucket_name, Key=key_name,
                             Body=object_bytes)
        print(f"Upload object '{key_name}' to bucket '{bucket_name}'.") 
        return response
    except ClientError:    
        print(f"Couldn't upload object '{key_name}' to bucket '{bucket_name}'.")
        raise

def main():
    # Share the client session with functions and objects to benefit from S3 Express One Zone auth key
    s3_client = boto3.client('s3')
    # Directory bucket name must end with --zone-id--x-s3
    resp = put_object(s3_client, 'doc-bucket-example--use1-az5--x-s3', 'sample.txt', b'Hello, World!')
    print(resp)

if __name__ == "__main__":
    main()
```

------

## Usando il AWS CLI
<a name="directory-upload-object-cli"></a>

Il seguente esempio di comando `put-object` mostra come utilizzare AWS CLI per caricare un oggetto da Amazon S3. Per eseguire questo comando, sostituisci `user input placeholders` con le informazioni appropriate.

```
aws s3api put-object --bucket bucket-base-name--zone-id--x-s3 --key sampleinut/file001.bin --body bucket-seed/file001.bin
```

Per ulteriori informazioni, consulta [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/put-object.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/put-object.html) nella *documentazione di riferimento dei comandi della AWS CLI *.

**Topics**
+ [Utilizzo dei caricamenti multiparte con i bucket di directory](s3-express-using-multipart-upload.md)