Python ASGI server
Project description
Xevel
My first attempt at a python ASGI server
Xevel is very much my first attempt at an ASGI server and it is definitely not perfect. I am open to any PRs or issues if you come across any problems.
NOTE: This will only work on UNIX-based systems.
A basic use example of Xevel could look like this:
from xevel import *
web = Xevel(('localhost', 9208)) # you can use tuples for port setups ('localhost', PORT') or unix sockets (provide file location as string)
# ('localhost', 9208) # inet
# '/tmp/test.sock' # unix
router = Router('localhost:9208') # force routers to only accept connections from certain domain/subdomains. can provide 1 as a string or multiple as a list
@router.before_request()
async def breq(req):
print('before request is running!!!')
@router.after_request()
async def areq(req):
print(f'after request is running!!! endpoint: {req.url}')
@router.route('/test')
async def test_route(req):
req.resp_headers['XD'] = 'lol'
return 'asgi server works no way!!!'
@web.before_serving()
async def before():
print('before serving is running!!!')
@web.after_serving()
async def after():
print('after serving is running!!!')
web.add_router(router)
web.start()
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
Xevel-0.1.5.tar.gz
(6.7 kB
view details)
Built Distribution
Xevel-0.1.5-py3-none-any.whl
(7.0 kB
view details)
File details
Details for the file Xevel-0.1.5.tar.gz
.
File metadata
- Download URL: Xevel-0.1.5.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a845e4368e75a70743b97051bb316dd00ec7a22983b404af2a798f3ecad1c9a5 |
|
MD5 | f4f9cc6299edfaeeb64008d888c8628c |
|
BLAKE2b-256 | 3efb0a8adefd222002b5d19e85ad721739b357930eed3069dd44582de8b1d207 |
File details
Details for the file Xevel-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: Xevel-0.1.5-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7765a5a69b0643274be59f417e929d18c1884de21460d1f15adc1e39eec20da4 |
|
MD5 | 4da78fe91ea8526734a27e09dc6e5ebd |
|
BLAKE2b-256 | db2a14755e03fb9ae8e3e4f66b0266b2a9abd62ee8c48768f6afcbb11ff25de6 |