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.2.1.tar.gz
(7.0 kB
view details)
Built Distribution
Xevel-0.2.1-py3-none-any.whl
(7.3 kB
view details)
File details
Details for the file Xevel-0.2.1.tar.gz
.
File metadata
- Download URL: Xevel-0.2.1.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.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 | 62fe8db9047d361bd2f0384315b2e8c0ca4092b3d21e4ab6c9f597f2eb44d4cb |
|
MD5 | 9a3f215116424c17bf29a29e3d8b9f0f |
|
BLAKE2b-256 | be946e4777802b1b86854595f6090e6156cc76595366c79888d6df78bb85f0e1 |
File details
Details for the file Xevel-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: Xevel-0.2.1-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.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 | 10b8f09e8f1b61d3a4a3daa97f07ae6332d68207fe277453627bfd3ab4c82c07 |
|
MD5 | a331342fd9aff9d3f6bbc51575e1f578 |
|
BLAKE2b-256 | cec0fc80ec0c7314bb52362bb2c2d8843edfb08619f56f637fb0ee7211ba0322 |