HTTPS and HTTP server framework
Project description
Slinn is a HTTPS and HTTP server framework
Create project
Unix-like (Linux, MacOS, FreeBSD...):
python3 -m slinn create helloworld
cd helloworld
venv/bin/python manage.py create localhost host=localhost host=127.0.0.1
venv/bin/python manage.py run
Windows:
py -m slinn create helloworld
cd helloworld
venv/Scripts/activate
py manage.py create localhost host=localhost host=127.0.0.1
py manage.py run
Simple example
from slinn import Server, Dispatcher, Filter, HttpResponse, Address
dp = Dispatcher()
@dp.route(Filter('/api.*'))
def api(request):
return HttpResponse('{"status": "ok"}')
@dp.route(Filter('.*'))
def helloworld(request):
return HttpResponse('Hello world!')
app = Server(dp, ssl_cert='fullchain.pem', ssl_key='key.pem')
app.listen(Address(8080))
Functions:
Server(self, *dispatchers, ssl_cert: str=None, ssl_key: str=None, http_ver: str='2.0')
Server.listen(self, address: Address)
Address(self, port: int, host: str=None)
Dispatcher(self, hosts: list=None)
Dispatcher.route(self, filter: Filter)
Filter(self, filter: str, methods: list[str]=None)
Filter.check(self, text: str, method: str) -> bool
HttpResponse(self, payload, data: list[tuple]=None, status: str='200 OK', content_type: str='text/plain')
HttpResponse.set_cookie(self, key: str, value)
HttpResponse.make(self, type: str='HTTP/2.0') -> str
HttpRedirect inherits from HttpResponse
HttpRedirect(self, location: str)
Request(self, http_data: str, client_address: tuple[str, int])
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
slinn-1.1.5.tar.gz
(7.9 kB
view details)
File details
Details for the file slinn-1.1.5.tar.gz.
File metadata
- Download URL: slinn-1.1.5.tar.gz
- Upload date:
- Size: 7.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f8458a220f286d11ad2ed7709129ff3215c97e7c5c94fa52721e9d261d89295
|
|
| MD5 |
b5df2163b037efe171252268b431323d
|
|
| BLAKE2b-256 |
c634db2fc1be1d1cccabb535345213dc85dc3aa15f6fefccc2b4bae19308f95a
|