A simple-to-use framework for http and https servers
Project description
🌐 HttPy
A simple-to-use http and https server, simillar to flask, in python.
✅ To-do
- HTTP and HTTPS server class
- Request class
- Document class
- Python code execution in html
- MIME type in Document class
- Default headers per server
- Per host handler
❓ How to use
from httpy.servers import HTTP_Server
from httpy import RequestMethod
# Define the port and host
host, port = "127.0.0.1", 80
# Instanciate the server object
server = HTTP_Server(host, port)
#For HTTPS servers, use HTTPS_Server(host, port, certificate_path, private_key_path)
# Create an handler for requests
@server.method(RequestMethod.GET, route="*", host="*") # Using the route and host parameters as '*' will use this handler as a fallback for the GET method.
def GET_Handler(request):
# do stuff
return Request.response(
500, # Status code
"Not Implemented", # Message
{"Server": "httpy/2.0", "Connection": "closed"}, # Headers
b"" # Body
)
@server.method(RequestMethod.GET, route="/api/", host="*")
def API_Handler(request):
# do stuff
return Request.response(
500, # Status code
"Not Implemented", # Message
{"Server": "httpy/2.0", "Connection": "closed"}, # Headers
b'{"foo": "bar"}' # Body
)
# Run the server
server.run()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
httpython-0.2.5.tar.gz
(5.3 kB
view hashes)
Built Distribution
Close
Hashes for httpython-0.2.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 17e9f98ec254e73cf611aa5bc77eab51a1b3efa18b6b793632ec561ea58244f2 |
|
MD5 | fb7521c5b05fbd28b4b8ec00d19d09ef |
|
BLAKE2b-256 | 97890283ef67d03fab69bb4a148414f79765d900ef6ecda04fa2b5e3fa53d579 |