

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

# Abilitazione del supporto binario tramite la console API Gateway
<a name="api-gateway-payload-encodings-configure-with-console"></a>

In questa sezione viene descritto come abilitare il supporto binario tramite la console API Gateway. Come esempio, utilizziamo un'API integrata con Amazon S3. Ci focalizziamo sulle attività per impostare i tipi di supporti ammessi e per specificare come dovrebbe essere gestito il payload. Per informazioni dettagliate su come creare un'API integrata con Amazon S3, consulta [Tutorial: creazione di una REST API come un proxy Amazon S3](integrating-api-with-aws-services-s3.md).

**Per abilitare il supporto binario mediante la console API Gateway**

1. Imposta i tipi di supporto binario per l'API:

   1. Crea una nuova API o scegline una esistente. Ad esempio, noi utilizziamo l'API `FileMan`.

   1. Nell'API selezionata nel pannello di navigazione principale scegli **Impostazioni API**.

   1. Nel riquadro **Impostazioni API** scegli **Gestisci tipi di supporti** nella sezione **Tipi di media binari**.

   1. Scegli **Aggiungi tipo di supporto binario**.

   1. Immetti il tipo di supporto richiesto, ad esempio **image/png**, nel campo di input. Se necessario, ripeti questa fase per aggiungere altri tipi di supporto. Per supportare tutti i tipi di file multimediali binari, specifica `*/*`.

   1. Scegli **Save changes** (Salva modifiche).

1. Imposta il modo in cui i payload dei messaggi vengono gestiti per il metodo API:

   1. Crea una nuova risorsa o scegli una risorsa esistente dell'API. Ad esempio, noi utilizziamo la risorsa `/{folder}/{item}`.

   1. Crea un nuovo metodo o scegli un metodo esistente della risorsa. Come esempio, utilizziamo il metodo `GET /{folder}/{item}` integrato nell'azione `Object GET` in Amazon S3. 

   1. Per **Gestione contenuti** scegli un'opzione. 

         
![\[Impostare il metodo GET nella console API Gateway.\]](http://docs.aws.amazon.com/it_it/apigateway/latest/developerguide/images/binary-support-content-handling-on-method-new-console.png)

      Scegliere **Passthrough** se non si vuole convertire il corpo quando il client e il back-end accettano lo stesso formato binario. Scegli **Converti in testo** per convertire il corpo binario in una stringa con codifica base64 quando, ad esempio, il back-end richiede che il payload di una richiesta binaria venga passato come proprietà JSON. Scegli quindi **Converti in binario** quando il client invia una stringa con codifica base64 e il back-end richiede il formato binario originale o quando l'endpoint restituisce una stringa con codifica base64 e il client accetta solo l'output binario.

   1. Per **Richiesta corpo passthrough** scegli **Quando non ci sono modelli definiti (consigliato)**.

      Puoi anche scegliere **Mai**. Ciò significa che l'API rifiuterà i dati con content-types che non dispongono di un modello di mappatura.

   1. Mantieni l'intestazione `Accept` della richiesta in entrata nella richiesta di integrazione. Procedi in questo modo se hai impostato `contentHandling` su `passthrough` e vuoi sovrascrivere questa impostazione al runtime.

         
![\[Mantenimento dell'intestazione Accept nella richiesta di integrazione.\]](http://docs.aws.amazon.com/it_it/apigateway/latest/developerguide/images/binary-support-preserve-incoming-accept-header-new-console.png)

   1. Per la conversione in testo, definisci un modello di mappatura per mettere i dati binari con codifica base64 nel formato richiesto.

      Un esempio di modello di mappatura per la conversione in testo è il seguente:

      ```
      {
        "operation": "thumbnail",
        "base64Image": "$input.body"
      }
      ```

      Il formato di questo modello di mappatura dipende dai requisiti dell'endpoint dell'input.

   1. Scegli **Save** (Salva).