Skip to main content

Simple aiohttp Server for both static and python/php file

Project description

Ahui-aiohttp-server

This is a simple http async server which extends python -m http.server.
(WARN: It's not recommended for production environments, just use it in development or testing environments only!):

  • Support print to http response directly (same as php's echo)
  • Support async-await
  • Support php, python

Install

pip install ahui-aiohttp-server
pip3 install ahui-aiohttp-server

Start server

$ tree .
./
    app/
        echo1.py
        echo2.py
        echo.php
        return.py
    js/
        test.js
$ python -m ahui_aiohttp_server
$ python -m ahui_aiohttp_server --host 127.0.0.1 --port 5000

Access server

Access via echo server(php-like):

$ cat app/echo1.py
print('Hello World!')

$ curl http://127.0.0.1:5000/app/echo1.py
Hello World!
$ curl http://127.0.0.1:5000/js/test.js
<js content>
$ curl http://127.0.0.1:5000/app/echo.php
<js content>

If you want to get request data(such as: get, post, cookie, ..., use aiohttp_handler(request) instead:

$ cat app/echo2.py
def aiohttp_handler(request):
    print(request.query)    # use print 

$ curl http://127.0.0.1:5000/app/echo2.py?var=value
{'var':'value'}

Access via normal aiohttp server:

$ cat app/return.py
from aiohttp import web
async def aiohttp_handler(request):
    data = await request.post()
    return web.Response(body=str(data)) # use return

$ curl http://127.0.0.1:5000/app/return.py?var=value - 'k1=v2'
{'k1':'v2'}

Access static file:

$ curl http://127.0.0.1:5000/js/test.js
<js content>

Required

  1. aiohttp
  2. python>=3.6

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ahui_aiohttp_server-0.1.16.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

ahui_aiohttp_server-0.1.16-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

Details for the file ahui_aiohttp_server-0.1.16.tar.gz.

File metadata

  • Download URL: ahui_aiohttp_server-0.1.16.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.1

File hashes

Hashes for ahui_aiohttp_server-0.1.16.tar.gz
Algorithm Hash digest
SHA256 fb61a19d054b07c4569dcea1d285624c5960e0caee2041a16ad4059d23876328
MD5 561892c2db8a5a41cac6bc8ca9fd31c6
BLAKE2b-256 86b91750cf3a1b4a82a47685c1f4d1c759a04db4e68fc81e6032e74d9a67a0a9

See more details on using hashes here.

File details

Details for the file ahui_aiohttp_server-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: ahui_aiohttp_server-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 3.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.1

File hashes

Hashes for ahui_aiohttp_server-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 f20de21c582cacb4a82da4cc89700efdd265d4fef216d39866d3c4c9f06aa8b6
MD5 95caf1da45c1da0ace2c96d45260fead
BLAKE2b-256 4b81088b78014828b250d3874e10c90c158166b82a495568b5fd12f9e312b010

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page