tornado中传递参数的几种方式
方法一 :tornado路由可以使用正则表达式中的子表达式传递url参数。比如:
(r"/member//(\w*)/([01]*)", MemberHandler)
匹配以后,tornado会将字符串()中匹配到的内容,作为参数传递到MemberHandler中去,因此我们在MemberHandler中定义get方法时增加参数:
class MemberHandler(tornado.web.RequestHandler):
def get(self,data,num):
self.write(data)
方法二 :通过 self.get_argument()
tornado的get和post提交的参数都可以通过self.get_argument()获得,只需要填写第一个参数值即可
tornado中一次性获取所有的参数方法 self.get_arguments()
方法三 :self.request.body
tornado的参数存储在self.request.body内,通过json以后就可以直接取值,当初我在前端使用angular时,
tornado就不能通过self.get_argument()获取到只能用这种办法获得angular post过来的数据。
data = json.loads(self.request.body)
keyword = data['content']
作者:Agoly 出处:https://www.cnblogs.com/qmfsun/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |