python - Tornado - What is the difference between RequestHandler's get_argument(), get_query_argument() and get_body_argument()? -
when use requesthandler.get_argument()
, requesthandler.get_query_argument()
, requesthandler.get_body_argument()
?
what use-case each of them?
also request.body
, request.argument
in these cases? used in scenarios?
and, there request.query
or similar too?
most http requests store parameters (say, form values) in 1 of 2 places: url (in form of ?foo=bar&spam=eggs
query string), or in request body (when using post request , either application/x-www-form-urlencoded
or multipart/form-data
mime type).
the request.get_query_argument()
looks url parameters, requesthandler.get_body_argument()
lets retrieve parameters set in post body. requesthandler.get_argument()
method retrieves either body or url parameter (in order).
you use request.get_argument()
when explicitly don't care parameter comes , endpoint supports both , post parameters. otherwise, use 1 of other methods, keep explicit parameters come from.
the request.get_*_argument
methods use request.body_arguments
, request.query_arguments
values (with request.arguments
being aggregate), decoded unicode. request.body
undecoded, unparsed raw request body; , yes, there equivalent self.query
containing query string url.
Comments
Post a Comment