Book Image

Python Web Development with Sanic

By : Adam Hopkins
Book Image

Python Web Development with Sanic

By: Adam Hopkins

Overview of this book

Today’s developers need something more powerful and customizable when it comes to web app development. They require effective tools to build something unique to meet their specific needs, and not simply glue a bunch of things together built by others. This is where Sanic comes into the picture. Built to be unopinionated and scalable, Sanic is a next-generation Python framework and server tuned for high performance. This Sanic guide starts by helping you understand Sanic’s purpose, significance, and use cases. You’ll learn how to spot different issues when building web applications, and how to choose, create, and adapt the right solution to meet your requirements. As you progress, you’ll understand how to use listeners, middleware, and background tasks to customize your application. The book will also take you through real-world examples, so you will walk away with practical knowledge and not just code snippets. By the end of this web development book, you’ll have gained the knowledge you need to design, build, and deploy high-performance, scalable, and maintainable web applications with the Sanic framework.
Table of Contents (16 chapters)
1
Part 1:Getting Started with Sanic
4
Part 2:Hands-On Sanic
11
Part 3:Putting It All together

Reading forms, query arguments, files, JSON, and more

Now that we know about pulling input from the path and the headers, we will turn our attention to more classic types of passing input values. Typically, we think of request data as being those bits of information that come from the request body. However, before we turn to the request body, we still have one more item in the first line of the HTTP request to examine: Query arguments.

Query arguments

As a reminder, the first line of an HTTP request looks like this:

GET /stalls/2021-07-01?type=fruit HTTP/1.1

If you have previous web experience, you might know that a URL can have a section of arbitrary parameters separated from the rest of the path by a question mark (?). These are known as query arguments (or parameters), follow in the form of key=value, and are concatenated with an ampersand (&). Sometimes, they are called parameters, and sometimes, they are called arguments. Here, we will call them arguments since...