100 Followers
·
Follow

AWS Giddy Up For Beginners

Amazon Web Service (AWS) is the Amazon’s version of on-demand cloud platform and APIs. Amazon EC2 is one of the most popular cloud computing services through dynamic provisioning of virtual servers. But there’re other AWS services, in fact, hundreds of them covering analytics, ML, AR, VR, networking, database, security, and hosting, etc.

When you are just starting the Cloud journey with AWS, it can be overwhelming. Where could you start?

AWS
AWS
-from https://aws.amazon.com/

One of the starting point that I found useful is to follow this step-by-step Amazon Example “Build a Serverless Web Application”. In fact, I had included this as one of the on-boarding tasks for my new team members when I was at Amazon. This example is simple to follow. It touches many important concepts such as IAM role, policy as well as several important AWS services such as S3, DynamoDb, API gateway, Lambda.

Build a Serverless Web Application
Build a Serverless Web Application
From https://aws.amazon.com/getting-started/hands-on/build-serverless-web-app-lambda-apigateway-s3-dynamodb-cognito/

I hope you will have fun going through this exercise and able to “Request Unicorn” when you complete the exercise :-)

Request Unicorn Web app
Request Unicorn Web app

Appendix

I am also including here a few minor issues I noticed in the above documentation. Module 4 “Deploy a RESTful API”, step 3 “Create a new resource and method”, you need two additional steps

  1. Enable CORS

Even though you might already clicked the checkbox “Select Enable API Gateway CORS” when creating the resource, CORS is actually still not enabled (not sure if this is a bug). You need to click Enable CORS from the Actions drop-down list and follow this instructions after the creation of the resource.

Enable CORS
Enable CORS

2. Enable Lambda Proxy

Click the checkbox in Resources/POST/IntegrationRequest. This allow add the RequestContext to be added as part of the event that Lambda function receives. This RequestContext was used inside the lambda function defined in Module 3/Step 3 of the example problem. Without Lambda Proxy, your web app will throw exception accessing /ride.html to “Request Unicorn”

Lambda Proxy
Lambda Proxy
Lambda Function
Lambda Function

Written by

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store