

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

# Chiamata dell'API mediante un client API REST
<a name="api-as-s3-proxy-test-using-postman"></a>

Per fornire un end-to-end tutorial, ora mostriamo come chiamare l'API usando [Postman](https://www.postman.com/), che supporta l' AWS autorizzazione IAM.<a name="api-as-s3-proxy-test-using-postman-steps"></a>

**Per chiamare l'API proxy Amazon S3 utilizzando Postman**

1. Distribuisci o ridistribuisci l'API. Annota l'URL di base dell'API visualizzato accanto a **Invoke URL** (URL chiamata) in alto in **Stage Editor** (Editor fasi).

1. Avvia Postman.

1. Seleziona **Authorization** (Autorizzazione), quindi scegli `AWS Signature`. Inserisci l'ID della chiave di accesso e la chiave di accesso segreta del tuo utente IAM rispettivamente nei campi **AccessKey**e **SecretKey**di immissione. Inserisci la destinazione Regione AWS in cui viene distribuita la tua API nella casella di testo **AWS Regione**. Immetti `execute-api` nel campo di input **Nome servizio**.

   Puoi creare una coppia di chiavi dalla scheda **Security Credentials (Credenziali di sicurezza)** con il tuo account utente IAM nella console di gestione IAM.

1. Per aggiungere un bucket denominato `amzn-s3-demo-bucket` all'account Amazon S3 nella regione `{region}`:

   1. Seleziona **PUT** nell'elenco a discesa dei metodi e digita l'URL del metodo (`https://api-id.execute-api.aws-region.amazonaws.com/stage/folder-name`)

   1. Imposta il valore dell'intestazione `Content-Type` come `application/xml`. Potrebbe essere necessario eliminare le intestazioni esistenti prima di impostare il tipo di contenuto.

   1. Seleziona la voce di menu **Body** (Corpo) e digita il seguente frammento XML come corpo della richiesta:

      ```
      <CreateBucketConfiguration> 
        <LocationConstraint>{region}</LocationConstraint> 
      </CreateBucketConfiguration>
      ```

   1. Seleziona **Send** (Invia) per inviare la richiesta. Se l'operazione viene eseguita correttamente, dovresti ricevere una risposta `200 OK` con un payload vuoto. 

1. Per aggiungere un file di testo a un bucket, segui le istruzioni riportate sopra. Se specifichi il nome bucket **amzn-s3-demo-bucket** per `{folder}` e il nome file **Readme.txt** per `{item}` nell'URL e fornisci la stringa di testo **Hello, World\$1** come contenuti del file (rendendola così il payload di richiesta), la richiesta diventa

   ```
   PUT /S3/amzn-s3-demo-bucket/Readme.txt HTTP/1.1
   Host: 9gn28ca086.execute-api.{region}.amazonaws.com
   Content-Type: application/xml
   X-Amz-Date: 20161015T062647Z
   Authorization: AWS4-HMAC-SHA256 Credential=access-key-id/20161015/{region}/execute-api/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-date, Signature=ccadb877bdb0d395ca38cc47e18a0d76bb5eaf17007d11e40bf6fb63d28c705b
   Cache-Control: no-cache
   Postman-Token: 6135d315-9cc4-8af8-1757-90871d00847e
   
   Hello, World!
   ```

   Se l'operazione viene eseguita correttamente, dovresti ricevere una risposta `200 OK` con un payload vuoto.

1. Per ottenere il contenuto del file `Readme.txt` appena aggiunto al bucket `amzn-s3-demo-bucket`, esegui una richiesta GET come la seguente:

   ```
   GET /S3/amzn-s3-demo-bucket/Readme.txt HTTP/1.1
   Host: 9gn28ca086.execute-api.{region}.amazonaws.com
   Content-Type: application/xml
   X-Amz-Date: 20161015T063759Z
   Authorization: AWS4-HMAC-SHA256 Credential=access-key-id/20161015/{region}/execute-api/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ba09b72b585acf0e578e6ad02555c00e24b420b59025bc7bb8d3f7aed1471339
   Cache-Control: no-cache
   Postman-Token: d60fcb59-d335-52f7-0025-5bd96928098a
   ```

   Se l'operazione viene eseguita correttamente, dovresti ricevere una risposta `200 OK` con la stringa di testo `Hello, World!` come payload.

1. Per elencare le voci nel bucket `amzn-s3-demo-bucket`, invia la richiesta seguente:

   ```
   GET /S3/amzn-s3-demo-bucket HTTP/1.1
   Host: 9gn28ca086.execute-api.{region}.amazonaws.com
   Content-Type: application/xml
   X-Amz-Date: 20161015T064324Z
   Authorization: AWS4-HMAC-SHA256 Credential=access-key-id/20161015/{region}/execute-api/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=4ac9bd4574a14e01568134fd16814534d9951649d3a22b3b0db9f1f5cd4dd0ac
   Cache-Control: no-cache
   Postman-Token: 9c43020a-966f-61e1-81af-4c49ad8d1392
   ```

   Se l'operazione riesce, dovresti ricevere una risposta `200 OK` con un payload XML che mostra una voce singola nel bucket specificato, a meno che tu non abbia aggiunto altri file al bucket prima di inviare questa richiesta.

   ```
   <?xml version="1.0" encoding="UTF-8"?>
   <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
       <Name>apig-demo-5</Name>
       <Prefix></Prefix>
       <Marker></Marker>
       <MaxKeys>1000</MaxKeys>
       <IsTruncated>false</IsTruncated>
       <Contents>
           <Key>Readme.txt</Key>
           <LastModified>2016-10-15T06:26:48.000Z</LastModified>
           <ETag>"65a8e27d8879283831b664bd8b7f0ad4"</ETag>
           <Size>13</Size>
           <Owner>
               <ID>06e4b09e9d...603addd12ee</ID>
               <DisplayName>user-name</DisplayName>
           </Owner>
           <StorageClass>STANDARD</StorageClass>
       </Contents>
   </ListBucketResult>
   ```

**Nota**  
Per caricare o scaricare un'immagine, è necessario impostare la gestione del contenuto su CONVERT\$1TO\$1BINARY.