Examples ======== HTTP ---- .. code-block:: python from asgikit import Request async def main(scope, receive, send): if scope["type"] != "http": return request = Request(scope, receive, send) # request method method = request.method # request path path = request.path # request headers headers = request.headers # read body as json body = await request.body.read_json() data = { "lang": "Python", "async": True, "platform": "asgi", "method": method, "path": path, "headers": dict(headers.items()), "body": body, } # send json response await request.respond_json(data) WebSocket --------- .. code-block:: python from asgikit import Request, WebSocketDisconnect async def app(scope, receive, send): if scope["type"] != "websocket": return request = Request(scope, receive, send) ws = await request.upgrade() print("Client connected") while True: try: message = await ws.read() await ws.write(message) except WebSocketDisconnect: print("Client disconnected") break