Getting the array as GET query parameters in Python

别说谁变了你拦得住时间么 提交于 2019-12-03 04:04:41

问题


I know in php I could just use $_GET['key1']['key2'] to retrieve GET data that is sent in the form of an array but is that something possible in Python as I just receive a string and it's not recognized as an array/list.

I use flask/werkzeug if that matters.


回答1:


The deep parsing of argument names is unique for PHP AFAIK.

If you need just a simple list, just pass several parameters with the same name and use request.args.getlist(<paramname>) (documentation).

Otherwise you have to parse the query string yourself.




回答2:


request.args is a MultiDict instance (MultiDict, Flask request api).

request.args[key] ## returns a single value, the first if there are multiple
request.args.getlist(key) ## returns a list

If you want to submit structures more complex than can be encoded using simple key:vals, consider sending a json encoded object.

Also, look at the jQuery recursive param serialisation pattern, and the jquery-unparam lib which can deserialise it.



来源:https://stackoverflow.com/questions/7940085/getting-the-array-as-get-query-parameters-in-python

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!