

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Inhaltstypkonvertierungen in API Gateway
<a name="api-gateway-payload-encodings-workflow"></a>

 Die Kombination aus den `binaryMediaTypes` Ihrer API, den Headern in Client-Anfragen und der Integrations-`contentHandling`-Eigenschaft bestimmt, wie API Gateway Payloads kodiert.

Die folgende Tabelle zeigt, wie API Gateway die Anforderungsnutzlast für bestimmte Konfigurationen des `Content-Type` Headers einer Anfrage, der `binaryMediaTypes` Liste einer [RestApi](https://docs.aws.amazon.com/apigateway/latest/api/API_RestApi.html)Ressource und des `contentHandling` Eigenschaftswerts der [Integrationsressource](https://docs.aws.amazon.com/apigateway/latest/api/API_Integration.html) konvertiert.


| Nutzlast der Methodenanforderung | `Content-Type`-Header der Anforderung | `binaryMediaTypes` | `contentHandling` | Nutzlast der Integrationsanforderung | 
| --- | --- | --- | --- | --- | 
| Textdaten | Beliebiger Datentyp | Undefined | Undefined | UTF8-kodierte Zeichenfolge | 
| Textdaten | Beliebiger Datentyp | Undefined | CONVERT\_TO\_BINARY | Base64-dekodiertes binäres Blob | 
| Textdaten | Beliebiger Datentyp | Undefined | CONVERT\_TO\_TEXT | UTF8-kodierte Zeichenfolge | 
| Textdaten | Ein Textdatentyp | Satz mit übereinstimmenden Medientypen | Undefined | Textdaten | 
| Textdaten | Ein Textdatentyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_BINARY | Base64-dekodiertes binäres Blob | 
| Textdaten | Ein Textdatentyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_TEXT | Textdaten | 
| Binäre Daten | Ein binärer Datentyp | Satz mit übereinstimmenden Medientypen | Undefined | Binäre Daten | 
| Binäre Daten | Ein binärer Datentyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_BINARY | Binäre Daten | 
| Binäre Daten | Ein binärer Datentyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_TEXT | Base64-kodierte Zeichenfolge | 

Die folgende Tabelle zeigt, wie API Gateway die Antwortnutzlast für bestimmte Konfigurationen des `Accept` Headers einer Anfrage, der `binaryMediaTypes` Liste einer [RestApi](https://docs.aws.amazon.com/apigateway/latest/api/API_RestApi.html)Ressource und des `contentHandling` Eigenschaftswerts der [IntegrationResponse](https://docs.aws.amazon.com/apigateway/latest/api/API_IntegrationResponse.html)Ressource konvertiert.

**Wichtig**  
 Wenn eine Anfrage mehrere Medientypen in ihrem `Accept`-Header enthält, berücksichtigt API Gateway nur den ersten `Accept`-Medientyp. Wenn Sie die Reihenfolge der `Accept`-Medientypen nicht beeinflussen können und der Medientyp Ihres binären Inhalts nicht der erste in der Liste ist, fügen Sie den ersten `Accept`-Medientyp in der `binaryMediaTypes`-Liste Ihrer API hinzu. API Gateway behandelt alle Inhaltstypen in dieser Liste als binär.   
Um z. B. eine JPEG-Datei mit einem `<img>`-Element in einem Browser zu übermitteln, sendet der Browser möglicherweise `Accept:image/webp,image/*,*/*;q=0.8` in einer Anforderung. Bei Hinzufügen von `image/webp` zur Liste `binaryMediaTypes` erhält der Endpunkt die JPEG-Datei als Binärdatei. 


| Nutzlast der Integrationsantwort | `Accept`-Header der Anforderung | `binaryMediaTypes` | `contentHandling` | Nutzlast der Methodenantwort | 
| --- | --- | --- | --- | --- | 
| Text- oder Binärdaten | Ein Texttyp | Undefined | Undefined | UTF8-kodierte Zeichenfolge | 
| Text- oder Binärdaten | Ein Texttyp | Undefined | CONVERT\_TO\_BINARY | Base64-dekodiertes Blob | 
| Text- oder Binärdaten | Ein Texttyp | Undefined | CONVERT\_TO\_TEXT | UTF8-kodierte Zeichenfolge | 
| Textdaten | Ein Texttyp | Satz mit übereinstimmenden Medientypen | Undefined | Textdaten | 
| Textdaten | Ein Texttyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_BINARY | Base64-dekodiertes Blob | 
| Textdaten | Ein Texttyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_TEXT | UTF8-kodierte Zeichenfolge | 
| Textdaten | Ein Binärtyp | Satz mit übereinstimmenden Medientypen | Undefined | Base64-dekodiertes Blob | 
| Textdaten | Ein Binärtyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_BINARY | Base64-dekodiertes Blob | 
| Textdaten | Ein Binärtyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_TEXT | UTF8-kodierte Zeichenfolge | 
| Binäre Daten | Ein Texttyp | Satz mit übereinstimmenden Medientypen | Undefined | Base64-kodierte Zeichenfolge | 
| Binäre Daten | Ein Texttyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_BINARY | Binäre Daten | 
| Binäre Daten | Ein Texttyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_TEXT | Base64-kodierte Zeichenfolge | 
| Binäre Daten | Ein Binärtyp | Satz mit übereinstimmenden Medientypen | Undefined | Binäre Daten | 
| Binäre Daten | Ein Binärtyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_BINARY | Binäre Daten | 
| Binäre Daten | Ein Binärtyp | Satz mit übereinstimmenden Medientypen | CONVERT\_TO\_TEXT | Base64-kodierte Zeichenfolge | 

Bei Umwandlung einer Textnutzlast in ein binäres Blob geht API Gateway davon aus, dass es sich bei den Textdaten um eine base64-kodierte Zeichenfolge handelt, und gibt die Binärdaten als base64-dekodierten Blob zurück. Wenn die Konvertierung fehlschlägt, wird eine `500`-Antwort zurückgegeben, die auf einen API-Konfigurationsfehler hinweist. Für eine solche Konvertierung geben Sie keine Mapping-Vorlage an, auch wenn Sie das [Pass-Through-Verhalten](integration-passthrough-behaviors.md) in der API aktivieren müssen.

Bei der Konvertierung eines binären Payloads in eine Textzeichenfolge wendet API Gateway immer eine base64-Kodierung auf die Binärdaten an. Sie können eine Mapping-Vorlage für eine solche Nutzlast definieren, aber nur auf die base64-kodierte Zeichenfolge in der Mapping-Vorlage durch `$input.body` zugreifen, wie im folgenden Beispielauszug einer Mapping-Vorlage dargestellt. 

```
{   
    "data": "$input.body"
}
```

Damit die binäre Nutzlast unverändert übergeben wird, müssen Sie das [Pass-Through-Verhalten](integration-passthrough-behaviors.md) in der API aktivieren. 