xweb-router
Router middleware for xweb
基本用法
from xweb import App
from xweb_router import Router
app = App()
router = Router()
app.use(router)
@router.get('/')
async def home(ctx):
ctx.body = "Home"
if __name__ == '__main__':
app.listen(8000)
路由插件
from xweb import App
from xweb_router import Router
app = App()
router = Router()
app.use(router)
@router.use('/')
async def middleware(ctx, fn):
"""Router Middleware"""
print('middleware')
await fn()
@router.get('/')
async def home(ctx):
ctx.body = "Home"
if __name__ == '__main__':
app.listen(8000)
动态参数
from xweb import App
from xweb_router import Router
app = App()
router = Router()
@router.get('/{name}')
async def hello(ctx):
"""URL parameters"""
ctx.body = f"Hello {ctx.params.name}"
if __name__ == '__main__':
app.listen(8000)
嵌套路由
from xweb import App
from xweb_router import Router
app = App()
router = Router()
nested = Router()
app.use(router)
router.use('/post')(nested)
@nested.get('/index')
async def index(ctx):
ctx.body = "Nested Index"
if __name__ == '__main__':
app.listen(8000)