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.
API-Anfragen stellen
Sie können nicht nur die Konsole verwenden, sondern auch die AWS Transfer Family API verwenden, um Ihre Server programmgesteuert zu konfigurieren und zu verwalten. In diesem Abschnitt werden die AWS Transfer Family-Operationen, das Anfordern des Signierens für die Authentifizierung und die Fehlerbehandlung beschrieben. Informationen zu den Regionen und Endpunkten, die für Transfer Family verfügbar sind, finden Sie unter AWS Transfer FamilyEndpunkte und Kontingente in der Allgemeine AWS-Referenz
Anmerkung
Sie können die AWS SDKs auch bei der Entwicklung von Anwendungen mit Transfer Family; verwenden. Die AWS SDKs für Java, .NET und PHP umschließen die zugrunde liegende Transfer Family Family-API und vereinfachen so Ihre Programmieraufgaben. Informationen zum Herunterladen der SDK-Bibliotheken finden Sie unter Beispielcodebibliotheken
Themen
Erforderliche Anforderungsheader für Transfer Family
In diesem Abschnitt werden die erforderlichen Header beschrieben, die Sie mit jeder POST-Anfrage an senden müssen. AWS Transfer Family In HTTP-Headern geben Sie wichtige Informationen über die Abfrage an, z. B, die Operation, die aufgerufen werden soll, das Datum der Abfrage und Informationen zur Ihrer Autorisierung als Sender der Abfrage. In Headern muss Groß- und Kleinschreibung beachtet werden; die Reihenfolge der Header ist nicht wichtig.
Das folgende Beispiel zeigt Header, die in der ListServersOperation verwendet werden.
POST / HTTP/1.1 Host:
transfer.us-east-1.amazonaws.com
x-amz-target: TransferService.ListServers x-amz-date: 20220507T012034Z Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20220507/us-east-1/transfer/aws4_request, SignedHeaders=content-type;host;x-amz-date;x-amz-target, Signature=13550350a8681c84c861aac2e5b440161c2b33a3e4f302ac680ca5b686de48de Content-Type: application/x-amz-json-1.1 Content-Length: 17 {"MaxResults":10}
Im Folgenden sind die Header aufgeführt, die in Ihren POST-Anfragen an Transfer Family enthalten sein müssen. Die unten aufgeführten Header, die mit „x-amz“ beginnen, sind spezifisch für. AWS Alle anderen aufgeführten Header sind allgemeine Header für HTTP-Transaktionen.
Header | Beschreibung |
---|---|
Authorization
|
Der Autorisierungsheader ist erforderlich. Das Format ist die standardmäßige Sigv4-Anforderungssignatur, die unter AWSAPI-Anfragen signieren dokumentiert ist. |
Content-Type |
Verwenden Sie ihn
|
Host |
Verwenden Sie den Host-Header, um den Transfer Family Family-Endpunkt anzugeben, an den Sie Ihre Anfrage senden. Dies
|
x-amz-date |
Sie müssen den Zeitstempel entweder im
|
x-amz-target |
In diesem Header werden die Version der API und die angefragte Operation angegeben. Die Werte des Ziel-Headers werden durch Verknüpfung der API-Version mit dem API-Namen gebildet und haben folgendes Format.
Der OperationName-Wert (zum Beispiel |
x-amz-security-token |
Dieser Header ist erforderlich, wenn es sich bei den zum Signieren der Anfrage verwendeten Anmeldeinformationen um temporäre Anmeldeinformationen oder um Sitzungsanmeldedaten handelt (Einzelheiten finden Sie unter Verwenden temporärer Anmeldeinformationen mit AWS Ressourcen im IAM-Benutzerhandbuch). Weitere Informationen finden Sie unter Hinzufügen der Signatur Allgemeine Amazon Web Services-Referenz zur HTTP-Anfrage in. |
Eingaben und Unterschreiben von Familienanfragen übertragen
Alle Anforderungseingaben müssen als Teil der JSON-Nutzlast im Anfragetext gesendet werden. Für Aktionen, bei denen alle Anforderungsfelder optional sind, müssen Sie beispielsweise ListServers
immer noch ein leeres JSON-Objekt im Anforderungstext angeben, z. B. {}
Die Struktur der Payload-Anfrage/Antwort von Transfer Family ist beispielsweise in der vorhandenen API-Referenz dokumentiert. DescribeServer
Transfer Family unterstützt die Authentifizierung mit AWS Signature Version 4. Einzelheiten finden Sie unter AWSAPI-Anfragen signieren.
Fehlermeldungen
Bei einem Fehler enthalten die Informationen im Antwort-Header:
-
Inhaltstyp:
application/x-amz-json-1.1
-
Einen passenden
4xx
- oder5xx
-HTTP-Statuscode
Der Textkörper einer Fehlermeldung enthält Informationen zu dem aufgetretenen Fehler. Das folgende Beispiel zeigt eine Fehlerantwort mit der Ausgabesyntax von Antwortelementen für alle Fehlermeldungen.
{ "__type": "String", "Message": "String", <!-- Message is lowercase in some instances --> "Resource": String, "ResourceType": String "RetryAfterSeconds": String }
In der folgenden Tabellen werden die Felder der JSON-Fehlerantwort in dieser Syntax erläutert.
- __type
-
Eine der Ausnahmen bei einem Transfer Family Family-API-Aufruf.
Typ: Zeichenfolge
- Nachricht oder Nachricht
-
Eine der Operationsfehlercode-Nachrichten .
Anmerkung
Einige Ausnahmen verwenden
message
, andere verwendenMessage
. Sie können den Code für Ihre Schnittstelle überprüfen, um den richtigen Fall zu ermitteln. Alternativ können Sie jede Option testen, um zu sehen, welche funktioniert.Typ: Zeichenfolge
- Resource
-
Die Ressource, für die der Fehler ausgelöst wurde. Wenn Sie beispielsweise versuchen, einen Benutzer zu erstellen, der bereits existiert,
Resource
ist dies der Benutzername für den vorhandenen Benutzer.Typ: Zeichenfolge
- ResourceType
-
Der Ressourcentyp, für den der Fehler ausgelöst wird. Wenn Sie beispielsweise versuchen, einen Benutzer zu erstellen, der bereits existiert,
ResourceType
istUser
der.Typ: Zeichenfolge
- RetryAfterSeconds
-
Die Anzahl der Sekunden, die gewartet werden muss, bevor der Befehl erneut ausgeführt wird.
Typ: Zeichenfolge
Beispiele für Antworten auf Fehler
Der folgende JSON-Hauptteil wird zurückgegeben, wenn Sie die DescribeServer
API aufrufen und einen Server angeben, der nicht existiert.
{ "__type": "ResourceNotFoundException", "Message": "Unknown server", "Resource": "s-11112222333344444", "ResourceType": "Server" }
Der folgende JSON-Hauptteil wird zurückgegeben, wenn die Ausführung einer API zu einer Drosselung führt.
{ "__type":"ThrottlingException", "RetryAfterSeconds":"1" }
Der folgende JSON-Hauptteil wird zurückgegeben, wenn Sie die CreateServer
API verwenden und nicht über ausreichende Berechtigungen verfügen, um einen Transfer Family Family-Server zu erstellen.
{ "__type": "AccessDeniedException", "Message": "You do not have sufficient access to perform this action." }
Der folgende JSON-Hauptteil wird zurückgegeben, wenn Sie die CreateUser
API verwenden und einen Benutzer angeben, der bereits existiert.
{ "__type": "ResourceExistsException", "Message": "User already exists", "Resource": "Alejandro-Rosalez", "ResourceType": "User" }
Verfügbare Bibliotheken
AWSbietet Bibliotheken, Beispielcode, Tutorials und andere Ressourcen für Softwareentwickler, die es vorziehen, Anwendungen mithilfe sprachspezifischer APIs anstelle der Befehlszeilentools und der Abfrage-API zu erstellen. Diese Bibliotheken bieten grundlegende Funktionen (nicht in den APIs enthalten) wie Anforderungsauthentifizierung, Wiederholungen von Anfragen und Fehlerbehandlung, sodass der Einstieg erleichtert wird. Siehe Tools, auf denen Sie aufbauen können AWS
Bibliotheken und Beispielcode in allen Sprachen finden Sie unter Beispielcode und Bibliotheken