Fundamentals 10 min read

Python's http.server Module

This article introduces Python's http.server module for creating HTTP servers and http.cookies module for managing cookies, providing practical examples for web development tasks.

Test Development Learning Exchange
Test Development Learning Exchange
Test Development Learning Exchange
Python's http.server Module

It introduces Python's http.server module for creating HTTP servers and http.cookies module for managing cookies, providing practical examples for web development tasks.

The article covers creating a simple HTTP server, specifying IP addresses, customizing handlers, using different ports, and implementing HTTPS. It also demonstrates creating and parsing cookies, adding cookies to requests, and setting expiration times.

Code examples include:

import http.server
import socketserver
PORT = 8000
class MyHandler(http.server.SimpleHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header("Content-type", "text/html")
        self.end_headers()
        self.wfile.write(b"Hello, World!")
with socketserver.TCPServer(("", PORT), MyHandler) as httpd:
    print("Server started at port", PORT)
    httpd.serve_forever()

Another example shows creating a custom handler for different paths:

import http.server
import socketserver
class MyHandler(http.server.BaseHTTPRequestHandler):
    def do_GET(self):
        if self.path == "/":
            self.send_response(200)
            self.send_header("Content-type", "text/html")
            self.end_headers()
            self.wfile.write(b"<h1>Welcome to My Server!</h1>")
        elif self.path == "/about":
            self.send_response(200)
            self.send_header("Content-type", "text/html")
            self.end_headers()
            self.wfile.write(b"<h2>About Us</h2>")
        else:
            self.send_response(404)
            self.send_header("Content-type", "text/html")
            self.end_headers()
            self.wfile.write(b"<h3>Page Not Found</h3>")
with socketserver.TCPServer(("", PORT), MyHandler) as httpd:
    print("Server started at port", PORT)
    httpd.serve_forever()

The article also includes examples for HTTPS, cookie management, and saving/loading cookies, with code snippets preserved as shown.

backendPythonWeb Developmenthttp serverfundamentalsCookie Management
Test Development Learning Exchange
Written by

Test Development Learning Exchange

Test Development Learning Exchange

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.