AWS Lambda is a compute service that lets you run code without provisioning or managing servers.
Amazon DynamoDB is a fast and flexible nonrelational database service for all applications that need consistent, single-digit millisecond latency at any scale.
Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale.
Let us see how we can GET and POST Data in Node.JS with the Serverless approach using AWS Lambda, API Gateway & DynamoDB.
Step 1) Sign in to your AWS Management Console and Go to Services ->Compute -> Lambda
Step 2) Create a Lambda function and enter details as below.
In the role, create a custom role with DynamoDB Full Access Policy in AWS IAM.
Step 3) Go to DynamoDB and Create a table.
Click on Create table:
Enter the table name and primary key as shown below:
Click on create.
Your table has been created.
Add other required columns like author name and book name.
Step 4) Go back to your Lambda function. Add the following code for ‘POST’:
Step 5) Add Table name in Lambda Environment Variables.
Step 6) Configure Test Event to execute function with example data.
Add test data and click on create:
Step 7) Now Save and Run the function: Click on “Test”
Finally your lambda function is executed successfully,
Go to your DynamoDB table and check the data:
Step 8) Create another Lambda function to fetch the ‘GET‘ DB details:
Click on Create in above to create a new function.
Add the following code as shown below:
We will use scan method to query DynamoDB table
Add the Table Name as environment variable for this function also as done before.
And Success!!
Click on TEST
You can easily GET details from DynamoDB Table
So now our POST and GET are working!!!
————————————————————————————————————
Any queries?
Please post your comment below!