tornado获取application/json类型的入参

时间:2023-03-10 03:04:04
tornado获取application/json类型的入参

tornado本身是不支持直接获取json入参的,在BaseHandler中定义方法get_json_argument,以供调用

class BaseHandler(tornado.web.RequestHandler):
def __init__(self, *argc, **argkw):
super(BaseHandler, self).__init__(*argc, **argkw)
self.session = session.Session(self.application.session_manager, self) def get_current_user(self):
return self.session.get("user_name") def get_json_argument(self, name, default=None):
args = json_decode(self.request.body)
name = to_unicode(name)
if name in args:
return args[name]
elif default is not None:
return default
else:
raise tornado.web.MissingArgumentError(name)