Inhoudsopgave:
- De gegevens vervoeren
- Voordat u iets met AWS kunt doen, moet u weten welke taken (toegankelijk via methoden) beschikbaar zijn. De API-documentatie kan u een overzicht geven van wat u kunt doen, maar de feitelijke lijst met beschikbare methoden is flexibel en verschilt per context. U kunt bijvoorbeeld bepaalde taken niet uitvoeren met sommige services omdat u een veilige verbinding mist of als u de service niet hebt geconfigureerd om de gewenste taak te ondersteunen.
- Aanvragen en reacties volgen de vertrouwde patronen die worden gebruikt met andere webservices. AWS zorgt er echter voor dat u weet dat REST slechts de architectuur is en dat API-verzoeken iets toevoegen aan REST; dat wil zeggen, ze vertegenwoordigen een andere laag. In veel gevallen ziet u REST / query, die verwijst naar REST die wordt gebruikt met een API-aanroep van een bepaald type.
Video: Britse verkiezingen: Dit zijn de belangrijkste thema's | NU nl 2024
gebruiken Om op een zinvolle manier met AWS te communiceren, moet u ermee communiceren. Communicatie vindt plaats op verschillende niveaus, waaronder:
- Transport: Dit is de onderliggende laag die de gegevens daadwerkelijk tussen partijen overdraagt.
- Detectie: Om te communiceren met AWS, moet u weten welke methoden beschikbaar zijn. Met het detectieniveau kunt u een algemene URL gebruiken om de lijst met beschikbare methoden voor een bepaalde service in XML of JSON aan te vragen als een lijst met hyperlinks.
- Verzoek: Nadat u weet welke methoden beschikbaar zijn, kunt u een verzoek indienen en AWS antwoordt.
Je kunt de communicatie gemakkelijk in meerdere lagen onderbreken, maar deze lagen vormen de meest elementaire en essentiële uitsplitsing. Het begrijpen van deze lagen is voldoende om krachtige applicaties te schrijven met behulp van AWS. (Naarmate uw toepassingen groter en complexer worden en AWS meer functionaliteit toevoegt, moet u mogelijk met extra lagen werken.)
De gegevens vervoeren
De eerste communicatieprobleem dat u moet oplossen, is de kwestie van het transport. AWS ondersteunt HTTP voor niet-beveiligde verzoeken en HTTPS voor beveiligde aanvragen voor sommige services, waaronder die in de volgende lijst:
- Amazon Associates-webservice
- Amazon CloudFront (HTTPS is vereist voor de besturings-API; momenteel wordt alleen HTTP geaccepteerd voor de verzoek-API)
- Amazon DevPay (HTTPS is vereist voor de Licentiedienst)
- Amazon Elastic Compute Cloud
- Amazon Flexible Payments-service (HTTPS is nodig)
- Amazon Fulfilment Web Service (HTTPS is vereist)
- Amazon Mechanical Turk
- Amazon SimpleDB
- Amazon Simple Queue Service
- Amazon Simple Storage Service
In de meeste gevallen levert het gebruik van Secure Sockets Layer (SSL) in de vorm van HTTPS-aanvragen het beste resultaat omdat de informatie veilig blijft via internet. Als de gegevens die u nodig hebt niet vertrouwelijk van aard zijn, kunt u in plaats daarvan soms een betere toepassingssnelheid behalen met HTTP. In sommige gevallen moet u HTTP gebruiken omdat de service geen ondersteuning biedt voor HTTPS, dus zorg ervoor dat u de servicedocumentatie raadpleegt voordat u aannames doet.
De meeste ontwikkelaars zijn bekend met zowel HTTP als HTTPS via de ontwikkeling van desktop- en browsertoepassingen. Wat u echter misschien niet weet, is dat AWS ook Message Queuing Telemetry Transport (MQTT) ondersteunt. Dit transportprotocol voor publiceren / abonneren van berichten richt zich op de behoeften van beperkte apparaten, zoals apparaten die worden gebruikt voor het uitvoeren van Internet of Things (IoT) en Machine-to-Machine (M2M) -taken.Bekijk meer informatie over MQTT op en de AWS-weergave ervan. AWS maakt gebruik van MQTT mogelijk met een aantal diensten, waaronder
- Amazon Simple Storage Service
- Amazon DynamoDB
- Amazon Kinesis
- AWS Lambda
- Amazon Simple Notification Service
- Amazon Simple Queue Service > Een API-methodelijst verkrijgen
Voordat u iets met AWS kunt doen, moet u weten welke taken (toegankelijk via methoden) beschikbaar zijn. De API-documentatie kan u een overzicht geven van wat u kunt doen, maar de feitelijke lijst met beschikbare methoden is flexibel en verschilt per context. U kunt bijvoorbeeld bepaalde taken niet uitvoeren met sommige services omdat u een veilige verbinding mist of als u de service niet hebt geconfigureerd om de gewenste taak te ondersteunen.
Een van de redenen waarom u REST wilt gebruiken, is dat CREST-aanvragen (CRUD) niet rechtstreeks aan HTTP worden toegewezen, gelezen, bijgewerkt en verwijderd (een onbreekbaar contract maken dat u elke keer moet aanpassen) tijd die je nodig hebt om een verandering aan te brengen). U doet een verzoek met behulp van een standaard-URL met een GET-aanvraag en ontvangt een lijst met hyperlinks naar de werkelijke methode-aanroepen. Het artikel over Hypermedia als de Engine of Application State (HATEOAS) beschrijft hoe dit proces meer in detail werkt.
Oorspronkelijk vertrouwde REST op XML om de lijst met links naar specifieke methodeaanroepen te bieden, maar met behulp van de Hypermedia Access Language (HAL) kunt u JSON gebruiken, wat gemakkelijker te begrijpen is. AWS vertrouwt momenteel op XML voor elke soort API-query, omdat de meeste ontwikkelaars XML beter lijken te begrijpen. is het oorspronkelijke formaat voor AWS. Dit artikel bevat details over de REST-API.
AWS heeft ooit uitgebreide ondersteuning geboden voor het Simple Object Access Protocol (SOAP). In feite kunt u nog steeds SOAP gebruiken om verzoeken te doen, maar alleen door HTTPS te gebruiken. In andere gevallen ondersteunt AWS helemaal geen SOAP meer (een voorbeeld van beëindiging van de EC2-service).
Een aanvraag doen
Aanvragen en reacties volgen de vertrouwde patronen die worden gebruikt met andere webservices. AWS zorgt er echter voor dat u weet dat REST slechts de architectuur is en dat API-verzoeken iets toevoegen aan REST; dat wil zeggen, ze vertegenwoordigen een andere laag. In veel gevallen ziet u REST / query, die verwijst naar REST die wordt gebruikt met een API-aanroep van een bepaald type.
U moet de meeste REST-verzoeken die u bij AWS plaatst ondertekenen. Sommige services, zoals Simple Storage Service (S3), staan anonieme verzoeken toe. Om echter een aanzienlijke hoeveelheid informatie te verzamelen, moet u ondertekende (geverifieerde) verzoeken indienen. In dit artikel wordt echter beschreven hoe u een dergelijk verzoek gebruikt om een beveiligingsprobleem met een S3-bucket op te lossen.
Wanneer u een verzoek indient met behulp van de CLI of een SDK, ondertekent de omgeving uw verzoek voor u. Hoewel het verzoek nog steeds is ondertekend, hoeft u zich geen zorgen te maken over het handmatig uitvoeren van de taak. U kunt meer lezen over het ondertekenen van gegevens op.