Regardless of platform, you will need to build APIs to serve data between different client applications and endpoints. Good APIs are a necessity for web and mobile projects, especially with the modern, mobile-first approach to development. This course delivers the fundamental knowledge required to enable highly connected interactions between applications via RESTful web APIs. Follow along with Gergo Bogdan and learn how to build up and structure an effective web API that can be used by any client application accessing it over HTTP, using Flask, the Python microframework.
Find out how to implement CRUD operations using SQLAlchemy and MySQL as the data store. Get an understanding of how REST works relative to APIs, and learn how to test APIs written in Python with the support of Flask. Explore token-based authentication and find out how to store passwords securely in your database. Along the way, Gergo introduces best practices and design guidelines when building large applications.
- Setting up Flask
- Using Flask templates and routing
- Implementing CRUD operations
- Implementing pagination
- Configuring RESTful authentication
- HTTP caching
- Securing web APIs
- Testing the application
Skill Level Intermediate
You can read my articles on grelution.com and follow me on Twitter. In this course, we're going to familiarize ourselves with Flask, a micro-framework developed for the Python programming language. During the course, we will learn how to efficiently design and implement Web APIs using the Flask framework. In the same time, we will cover general design guidelines, which can be used with any technologies today. First, we will start with Flask basics like routing, templates and Flash messages.
Then, we will continue with creating our models using SQLAlchemy. We will cover CRUD and REST basics. And we will implement Create and Read for our RESTful API. Next, we will implement Update and Delete. We will check what is Hypermedia. And we will learn how to implement pagination in our Web API. Then, we will cover more advanced topics like http caching, best practices for Web API error-handling, and we will review some design guidelines for building large projects with Flask.
We continue with advanced topics like https, authentication of Web APIs, usage of cookies, and we learn how to securely store passwords. The last section covers testing within Flask. We learn how to test CRUD Operations, authentication and custom Flask routes. To get the most out of the course, you should be familiar with Python programming language. You should know what the JSON data structure is. And on your system, you should have a MySQL installation.
Meanwhile, you should be able to understand HTML and CSS. The main goal of this course is to learn how to use Flask for efficiently developing Web APIs. Besides this, my goal was to offer you as much general knowledge about RESTful Web APIs as it is needed, so you can design and apply best practices when implementing your own Web API. After finishing the course, you should have the amount of knowledge to be able to decide if Flask is a good fit for your project or not. So, let's begin this journey together, and I hope to see you there.