Python 路由,获取请求方法

2 投票
1 回答
1355 浏览
提问于 2025-04-16 17:11

我在用Python写路由,想知道怎么在这里映射请求的方法,比如POST、GET、DELETE等等...

mapper.connect("/user", controller=user_controller, action="user")

1 个回答

4

添加一个条件,指定所需的HTTP方法,并映射到相应的控制器操作。例如,你的代码片段可以改写成:

mapper.connect("/user", controller=user_controller, action="get_user", conditions=dict(method=["GET"]))
mapper.connect("/user", controller=user_controller, action="add_user", conditions=dict(method=["POST"]))

可以查看文档,地址是 http://routes.groovie.org/setting_up.html#conditions

注意,如果你只想指定一个HTTP方法,而让其他所有请求都由一个路由处理,可以在更具体的路由之后添加一个匹配的路由,而不加条件:

## Handle GET requests
mapper.connect("/user", controller=user_controller, action="get_user", conditions=dict(method=["GET"]))
## Handle all other, non-GET requests
mapper.connect("/user", controller=user_controller, action="add_user")

撰写回答