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.0.tar.gz
(7.0 kB
view details)
Built Distribution
Xevel-0.2.0-py3-none-any.whl
(7.3 kB
view details)
File details
Details for the file Xevel-0.2.0.tar.gz
.
File metadata
- Download URL: Xevel-0.2.0.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 | 88d5bc91fe5eabd5d3cd98a5ae0e602667802cf226dc5cf294a08bccf84a6691 |
|
MD5 | fb5dfd7a47dea9978189730f382803ab |
|
BLAKE2b-256 | 7c5135208ab097d361a61c850d337be14dd55951ee8401db9e851c974df5615a |
File details
Details for the file Xevel-0.2.0-py3-none-any.whl
.
File metadata
- Download URL: Xevel-0.2.0-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 | fb9e288f74fa2ed5e68ebb6c401058abce23e9dde6c3d547740fde2456257572 |
|
MD5 | 26f973188ff5dc73a8320456c37264f1 |
|
BLAKE2b-256 | fc75376df3c1675a80fecb97797722c6857052adfd92889edeb852ab4e3f52ed |