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.3.7.tar.gz
(6.9 kB
view details)
Built Distribution
Xevel-0.3.7-py3-none-any.whl
(7.0 kB
view details)
File details
Details for the file Xevel-0.3.7.tar.gz
.
File metadata
- Download URL: Xevel-0.3.7.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6656c2a5a5b9d434553d3ac2237f3fb412232dc41e9c05514a8ba27e0c3dd73 |
|
MD5 | 3b886f8e12aad617ccc5a89aeee2b3af |
|
BLAKE2b-256 | 4fd153c83ad155a8e8d8fa237e3319d2fd816d78c438a0e94ab63cbc8568c100 |
File details
Details for the file Xevel-0.3.7-py3-none-any.whl
.
File metadata
- Download URL: Xevel-0.3.7-py3-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cd1dcccd48f2bc53a843fb561b404b815f0f0dc18ee44c0e8a5f5045d264857 |
|
MD5 | 5eb9fd100ae87539cb6d7dc415d84c16 |
|
BLAKE2b-256 | 5cb18a44b9ce187bd9620ba0349ffc8b62db2dff1674998e9a3f178d03ce2734 |