Request Handlers
Function-based handlers
Request handlers are callables that return a Response or any object (which is auto‑wrapped in Response).
Register handlers using @app.route, @app.get, @app.post, etc.:
from jetweb import JetWeb, Request, Response
app = JetWeb()
@app.route("/hello", methods=["GET"])
def hello(request: Request) -> Response:
return Response(content="Hello, World!")
app.run()
If a handler returns a plain object or string, JetWeb wraps it in a Response automatically:
@app.get("/ping")
def ping(request: Request) -> dict:
return {"status": "ok"}
Class-based handlers
Class-based handlers must inherit from BaseHandler and be decorated like function-based handlers.
HTTP methods (get, post, etc.) are defined as instance methods:
@app.route("/hello")
class HelloHandler(BaseHandler):
def get(self, request: Request) -> str:
return "Hello from GET!"
def post(self, request: Request) -> str:
return "Hello from POST!"