O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

AWS Serverless APIs & Apps - A Complete Introduction

Video Description

Get into serverless computing with API Gateway, AWS Lambda and other Amazon Web Services! Zero server config APIs & SPAs

About This Video

  • Create your own API Gateway and Lambda and Use it for your projects.
  • Effortlessly build applications on cloud services with serverless components.
  • Manage and secure your applications using AWS tools

In Detail

This course will introduce you to serverless computing and then quickly dive into how to build serverless apps with Amazon Web Services (AWS).

Specifically, you will learn:

  • To build a REST API without worrying about servers, using AWS API Gateway
  • Set up your on-demand code via AWS Lambda
  • Execute Lambda code whenever incoming requests reach your defined REST endpoints
  • Store data in a database - naturally without managing any database servers!

We won't stop here though! Instead, you'll then dive even deeper into serverless computing and learn:

  • To add user authentication to your existing frontend apps and how you can then also protect your REST API against unauthenticated access with ease!
  • how you can easily integrate a complete user sign up & sign in flow (including user confirmation) into ANY app (web app, iOS or Android app!) with AWS Cognito
  • Deploy your web app in a serverless manner
  • Speed up the delivery of your static web app assets

Secure your serverless app

What else you can build with the services covered in this course and which other services might be interesting to you were to dive deeper regarding advanced development workflows.

The code bundle for this video course is available at https://github.com/PacktPublishing/AWS-Serverless-APIs-and-Apps---A-Complete-Introduction

Table of Contents

  1. Chapter 1 : Getting Started
    1. Introduction 00:02:44
    2. What is AWS? 00:01:52
    3. What is Serverless Development? 00:05:36
    4. AWS Signup & First Serverless API 00:08:31
    5. Why AWS? 00:01:02
    6. Course Structure 00:03:22
    7. How to get the Most out of this Course 00:01:35
  2. Chapter 2 : The Core Serverless Services
    1. Module Introduction 00:00:43
    2. An Overview over the Core Serverless Services 00:05:31
    3. The Course Project 00:02:51
  3. Chapter 3 : Creating an API with API Gateway & AWS Lambda
    1. Module Introduction 00:00:55
    2. What is API Gateway? 00:02:18
    3. Accessing the API Gateway Console 00:01:04
    4. General API Gateway Features 00:04:47
    5. API-specific Features & Options 00:04:51
    6. Introducing the Request-Response Cycle 00:04:38
    7. Understanding the Request-Response Cycle 00:06:13
    8. Creating a New API 00:03:19
    9. Creating a Resource (= URL Path) 00:03:15
    10. Handling CORS and the OPTIONS Preflight Request 00:04:11
    11. Creating a (HTTP) Method 00:04:11
    12. What is AWS Lambda? 00:02:46
    13. Creating a Lambda Function 00:10:05
    14. Connecting Lambda Functions to API Gateway Endpoints 00:01:27
    15. Accessing the API from the Web & Fixing CORS Issues 00:07:25
    16. Understanding "event" in Lambda Functions 00:01:59
    17. Forwarding Requests with "Proxy Integration" 00:03:52
    18. Accessing Lambda Logs 00:02:51
    19. Getting Started with Body Mapping Templates 00:04:45
    20. Extracting Request Data with Body Mapping Templates 00:04:09
    21. What's the Idea behind Body Mappings? 00:02:10
    22. Mapping Response Data 00:02:41
    23. Using Models & Validating Requests 00:03:15
    24. Models & Mappings 00:06:43
    25. Next Steps 00:01:25
    26. Adding a DELETE Method Endpoint to the API 00:02:25
    27. Using Path Parameters 00:08:43
    28. Accessing the API from the Web - The Right Way 00:07:11
    29. Wrap Up 00:02:43
  4. Chapter 4 : Data Storage with DynamoDB
    1. Module Introduction 00:00:44
    2. What is DynamoDB? 00:02:50
    3. How DynamoDB Organizes Data 00:04:58
    4. NoSQL vs SQL 00:02:51
    5. Using DynamoDB with Lambda 00:00:53
    6. Creating a Table in DynamoDB 00:02:41
    7. Understanding Read & Write Capacity 00:04:12
    8. Creating and Scanning Items 00:02:16
    9. What about multiple Databases? 00:01:21
    10. Accessing DynamoDB from Lambda 00:04:36
    11. Sidenote: How Lambda works behind the Scenes 00:01:42
    12. Putting Items into a DynamoDB Table from Lambda 00:06:15
    13. Setting Permissions Right 00:02:19
    14. Using API Gateway (Request) Data for Item Creation 00:06:30
    15. Mapping the Response & Web Testing 00:03:05
    16. Scanning Data in DynamoDB from Lambda 00:07:52
    17. Improving the IAM Permissions 00:04:30
    18. Restructuring Fetched Data in Lambda 00:03:00
    19. Getting a Single Item from DynamoDB via Lambda 00:05:38
    20. Testing it from the Web & Passing Correct Data 00:01:37
    21. Preparing "Delete" Permissions 00:02:49
    22. Deleting Items in DynamoDB via Lambda 00:04:41
    23. Mapping DynamoDB Responses 00:06:46
    24. Wrap Up 00:01:50
  5. Chapter 5 : Authenticating Users with Cognito and API Gateway Authorizers
    1. Module Introduction 00:01:33
    2. How to add Authorization to API Gateway 00:02:13
    3. Understanding Custom Authorizers (API Gateway) 00:04:01
    4. Creating a Custom Authorizer Function 00:10:12
    5. Using Custom Authorizers 00:05:51
    6. Retrieving Users from Custom Authorizers 00:06:09
    7. What is AWS Cognito? 00:02:28
    8. Cognito User Pools and Federated Identities 00:01:31
    9. Creating a Cognito User Pool 00:07:49
    10. Understanding the Cognito Auth Flow 00:03:19
    11. Adding Cognito to a Frontend App - Getting Started 00:05:28
    12. Adding Signup to the Frontend App 00:12:01
    13. Adding User Confirmation to a Frontend App 00:04:08
    14. Adding Signin to a Frontend App 00:05:50
    15. Managing User State with Cognito 00:03:49
    16. Using a Cognito Authorizer with API Gateway 00:02:47
    17. Passing the right User ID to Lambda 00:06:43
    18. Using Query Params & Cognito from Lambda 00:07:59
    19. Passing Query Params from the Frontend 00:03:50
    20. Passing the User Id to the DELETE Endpoint 00:05:06
    21. Wrap Up 00:01:46
  6. Chapter 6 : Hosting a Serverless SPA
    1. Module Introduction 00:02:01
    2. What is S3? 00:02:33
    3. Creating a S3 Bucket 00:04:31
    4. Uploading the Web App to the Bucket 00:02:47
    5. Turning a S3 Bucket into a Static Webserver 00:03:40
    6. Setting up Logging 00:01:53
    7. Optimizing Content Delivery: What is AWS CloudFront? 00:02:28
    8. Setting up a CloudFront Distribution 00:04:40
    9. Finishing the CloudFront Setup 00:01:08
    10. Using a Custom Domain: What is Route53? 00:01:15
    11. Registering a Domain 00:01:53
    12. Connecting a Domain to a CloudFront Distribution 00:07:02
    13. Wrap Up 00:01:16
  7. Chapter 7 : Beyond the Basics - An Outlook
    1. Module Introduction 00:03:13
    2. Documenting an API 00:02:10
    3. Other AWS Lambda Triggers 00:08:01
    4. Going Serverless with a Node/ Express App (Non-API!) 00:01:59
    5. Running Node/ Express Apps via Lambda + API Gateway 00:09:25
    6. Pros and Cons of Serverless Node/Express MPA 00:03:08
    7. Serverless Apps and Security 00:12:04
    8. A Case of a Better Development Workflow 00:01:03
    9. Getting to know the Serverless Framework 00:06:03
    10. Getting to know SAM (Serverless Application Model) by AWS 00:03:40
    11. Testing Serverless Apps with localstack 00:03:18
    12. Other useful AWS Services 00:05:38
    13. Wrap Up 00:01:12
  8. Chapter 8 : Course Roundup
    1. Roundup 00:01:00