Aus einer Vielzahl von Gründen kann ich AWS SDKs nicht verwenden und muss Ruhe auf die APIs aufrufen. Ich habe eine Authentifizierung gefunden, muss aber verstehen, welche Ressourcen angerufen werden müssen. Die meisten AWS-Dokumente verweisen auf ihre SDKs. Wie finde ich Ruhezeiten für, sagen wir AWS Key Management (KMS)?AWS Rest API ohne SDK
Antwort
Siehe Aktionen AWS KMS Dokumentation hier:
http://docs.aws.amazon.com/kms/latest/APIReference/API_Operations.html
Liste der AWS-Endpunkte für alle Dienste:
Zum Beispiel KMS in us-east ist kms.us-Ost-1.amazonaws .com
Beispiele auf HTTPS-Anfragen an AWS-Endpunkten und wie die Anfrage zu unterschreiben:
http://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html
würde So kann die Basis-URL für KMS ListAliases (vor der Unterzeichnung):
https://kms.us-east-1.amazonaws.com/?Action=ListAliases&Version=2010-05-08
Dies ist ein Beispiel für ein PUT-Objekt AWS Amazon Web Service über erholsame Befehle in schnellen 4 für ios tun. Ich konnte das nirgendwo im Internet finden, also viel Spaß. Ich musste es selbst zusammensetzen. Mein Bucket ist derzeit auf öffentliches Lesen/Schreiben eingestellt. Ich denke, dass das Hinzufügen von Benutzername/Passwort (Access Key ID und Secret Access Key) durch Parameter erfolgt. Diese restRequest-Funktion hat einen Wörterbuchparameter, an dem sie hinzugefügt werden kann. Aber vom Experimentieren mit dem gleichen Schreiben über Postman denke ich, dass der Amazon Web Service das als kombinierten Header mit dem Namen "Authorization" erwartet. Ich bin mir nicht sicher, wie das genau funktioniert, aber Postman hat AWS als Login-Typ, also experimentieren Sie dort. Ich habe meine restRequest Ruhe-Funktion von einem erholsamen Beispiel irgendwo auf Stack-Überlauf.
func restRequest(url:String, method: String, sBody: String ,
params: [String: String], completion: @escaping ([AnyObject])->()){
if let nsURL = NSURL(string:url) {
let request = NSMutableURLRequest(url: nsURL as URL)
if method == "PUT" {
request.httpMethod = "PUT"
for thisOne in params {
request.setValue(thisOne.value, forHTTPHeaderField: thisOne.key)
}
request.httpBody = "some text in the file we are putting"
}
// Add other verbs here
let task = URLSession.shared.dataTask(with: request as URLRequest) {
(data, response, error) in
do {
// what happens if error is not nil?
// That means something went wrong.
// Make sure there really is some data
if let data = data {
let response = try JSONSerialization.jsonObject(with: data, options: JSONSerialization.ReadingOptions.mutableContainers)
completion(response as! [AnyObject])
}
else {
// Data is nil.
}
} catch let error as NSError {
print("json error: \(error.localizedDescription)")
}
}
task.resume()
}
else{
// Could not make url. Is the url bad?
// You could call the completion handler (callback) here with some value indicating an error
}
}
Und es so nennen:
let urlString = "https://bucketname.s3.amazonaws.com/test.txt"
restRequest(url: urlString, method: "PUT", sBody: sData, params: [ "Date" : "20180125T214827Z" ]) {
(result) in
// Handle result here.
print("restRequest result : \(result)")
}
- 1. API-Gatewayanfrage mit AWS SDK
- 2. Amazon S3: SDK oder REST API
- 3. AWS Lambda, AWS-API-Gateway und Sichern von REST-Endpunkten
- 4. aws Rechnungsinformationen mit aws java sdk
- 5. REST API für Redshift
- 6. QuickBooks Online v3 - REST API und das SDK
- 7. AWS Java SDK-Anmeldeinformationen
- 8. Transferutility in Aws sdk
- 9. AWS SDK: java.lang.NoSuchMethodError
- 10. Paypal REST API - Kreditkartenbestätigung ohne Berechnung
- 11. PayPal REST API. NET SDK - 400 ungültige Anfragen
- 12. SSLHandshakeException bei Verwendung von AWS SDK für Java-API
- 13. Pass Querystring Parameter in AWS API Gateway iOS SDK
- 14. Festlegen von Pfadparametern in AWS API Gateway JavaScript-SDK
- 15. Alexa skill Rest API
- 16. Fehlerbehandlung bei Java SDK für REST API-Dienst
- 17. Paypal REST API Prozess
- 18. Google Drive SDK-REST-API - Gemeinsame Dateien filtern
- 19. REST-API und nicht-REST-API
- 20. Anruf Rest-API von Java Rest API
- 21. AWS S3 Java SDK - Zugriff
- 22. AWS SDK v2 für s3
- 23. AWS iOS SDK mit KMS
- 24. AWS Java SDK manuell Signaturversion
- 25. Facebook Login Für Rest Api
- 26. AWS SDK prüft, ob Objekt existiert
- 27. Seitennummerierung mit DynamoDBMapper Java AWS SDK
- 28. AWS Java SDK DynamoDBClient-Klassendatei nicht gefunden
- 29. AWS SDK AmazonCloudFormationClient Vorlage Version Problem
- 30. Liferay REST-Webservice-API