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)
原文地址:https://www.cnblogs.com/zipon/p/10730201.html