Book Image

Building Serverless Python Web Services with Zappa

By : Abdulwahid Abdulhaque Barguzar
Book Image

Building Serverless Python Web Services with Zappa

By: Abdulwahid Abdulhaque Barguzar

Overview of this book

Serverless applications are becoming very popular these days, not just because they save developers the trouble of managing the servers, but also because they provide several other benefits such as cutting heavy costs and improving the overall performance of the application. This book will help you build serverless applications in a quick and efficient way. We begin with an introduction to AWS and the API gateway, the environment for serverless development, and Zappa. We then look at building, testing, and deploying apps in AWS with three different frameworks--Flask, Django, and Pyramid. Setting up a custom domain along with SSL certificates and configuring them with Zappa is also covered. A few advanced Zappa settings are also covered along with securing Zappa with AWS VPC. By the end of the book you will have mastered using three frameworks to build robust and cost-efficient serverless apps in Python.
Table of Contents (20 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Implementing a random quote API


In this section, we are going to create a RESTful API that generates a random quote. This will include the Falcon-based API implementation with Mashape API integration, like we did in Chapter 9, Asynchronous Task Execution on AWS Lambda. This time, we are not going to integrate a database as we don't want to persist any information. This will be a simple HTTP GET request to our API and then we will return a JSON response with a randomly generated quote using the Mashape API. Let's look at the prerequisites in the next section.

Prerequisites

I hope you have met the previously mentioned technical requirements and set up the development environment using the pipenv tool. Now, you need to sign up at the Mashape API marketplace (https://market.mashape.com/), where we will be using the Random Famous Quote API (https://market.mashape.com/andruxnet/random-famous-quotes). Once you acquire the credentials to use this API, then we need to configure it in our application...