Book Image

Building Python Web APIs with FastAPI

By : Abdulazeez Abdulazeez Adeshina
Book Image

Building Python Web APIs with FastAPI

By: Abdulazeez Abdulazeez Adeshina

Overview of this book

RESTful web services are commonly used to create APIs for web-based applications owing to their light weight and high scalability. This book will show you how FastAPI, a high-performance web framework for building RESTful APIs in Python, allows you to build robust web APIs that are simple and intuitive and makes it easy to build quickly with very little boilerplate code. This book will help you set up a FastAPI application in no time and show you how to use FastAPI to build a REST API that receives and responds to user requests. You’ll go on to learn how to handle routing and authentication while working with databases in a FastAPI application. The book walks you through the four key areas: building and using routes for create, read, update, and delete (CRUD) operations; connecting the application to SQL and NoSQL databases; securing the application built; and deploying your application locally or to a cloud environment. By the end of this book, you’ll have developed a solid understanding of the FastAPI framework and be able to build and deploy robust REST APIs.
Table of Contents (14 chapters)
Part 1: An Introduction to FastAPI
Part 2: Building and Securing FastAPI Applications
Part 3: Testing And Deploying FastAPI Applications


In this chapter, you have successfully tested the API by writing tests for the authentication routes and the CRUD route. You have learned what testing is and how to write tests with pytest, a fast testing library built for Python applications. You also learned what pytest fixtures are and used them in creating reusable access tokens and database objects, as well as preserving the application instance throughout the testing session. You were able to assert the responses of your API HTTP requests and verify the behavior of your API. Finally, you learned how to generate a coverage report for your tests and distinguish the blocks of code run during the testing session.

Now that you have been equipped with the knowledge of testing web APIs, you are ready to publish your application to the World Wide Web through a deployment channel. In the next and final chapter, you’ll learn how to containerize your application and deploy your locally using Docker and docker-compose.