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.6.tar.gz
(6.5 kB
view details)
Built Distribution
Xevel-0.2.6-py3-none-any.whl
(6.7 kB
view details)
File details
Details for the file Xevel-0.2.6.tar.gz
.
File metadata
- Download URL: Xevel-0.2.6.tar.gz
- Upload date:
- Size: 6.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 85225bc51336db51aba13a35ed4bcb78598bd1d11febb5ef139c124b1ad58006 |
|
MD5 | 8c63c3542927cbad91f050a46c19f5f4 |
|
BLAKE2b-256 | 8da14515655f08ee265a0145af9c2647e935285f4d39155716ad0cd282b9518e |
File details
Details for the file Xevel-0.2.6-py3-none-any.whl
.
File metadata
- Download URL: Xevel-0.2.6-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c348a205759b791d672eaafe911e0c15dd384a73b41ced480f30f554cfa3daf9 |
|
MD5 | 1e031d45c044567ba4dff53e863dc18f |
|
BLAKE2b-256 | f07944c1c3a0b600c672176c373d29dfced5be4d3dbb02dde159cca17085f82d |