A Rust HTTP server for Python applications.
Rationale
The main reasons behind Granian design are:
Have a single, correct HTTP implementation, supporting versions 1, 2 (and eventually 3)
Provide a single package for several platforms
Avoid the usual Gunicorn + uvicorn + http-tools dependency composition on unix systems
Provide stable performance when compared to existing alternatives
Features
Supports ASGI/3, RSGI and WSGI interface applications
Implements HTTP/1 and HTTP/2 protocols
Supports HTTPS
Supports Websockets over HTTP/1 and HTTP/2
Tide is a friendly HTTP server built for casual Rustaceans and veterans alike. It's completely modular, and built directly for async/await. Whether it's a quick webhook, or an L7 load balancer, Tide will make it work.
This document describes MASQUE (Multiplexed Application Substrate
over QUIC Encryption). MASQUE is a mechanism that allows co-locating
and obfuscating networking applications behind an HTTPS web server.
The currently prevalent use-case is to allow running a VPN server
that is indistinguishable from an HTTPS server to any unauthenticated
observer. We do not expect major providers and CDNs to deploy this
behind their main TLS certificate, as they are not willing to take
the risk of getting blocked, as shown when domain fronting was
blocked. An expected use would be for individuals to enable this
behind their personal websites via easy to configure open-source
software.
Powerful HTTP and GraphQL tool belt
Free and open source on Mac, Windows, and Linux
HTTPie (pronounced aych-tee-tee-pie) is a command line HTTP client. Its goal is to make CLI interaction with web services as human-friendly as possible. It provides a simple http command that allows for sending arbitrary HTTP requests using a simple and natural syntax, and displays colorized output. HTTPie can be used for testing, debugging, and generally interacting with HTTP servers.
Replace cURL with httpie: Thanks to Hening for the hint @PyBerlin!
pushpin, a reverse proxy for real time web, looks interesting. the backend still uses regular http requests
Waitress is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones which live in the Python standard library. It runs on CPython on Unix and Windows under Python 2.6+ and Python 3.2. It is also known to run on PyPy 1.6.0 on UNIX. It supports HTTP/1.0 and HTTP/1.1.
htty is a console application for interacting with web servers. It’s a fun way to explore web APIs and to learn the ins and outs of HTTP.
Inspect HTTP requests.
RequestBin lets you create a URL that will collect requests made to it, then let you inspect them in a human-friendly way. Use RequestBin to see what your HTTP client is sending or to look at webhook requests.