如何从请求中获取所有查询字符串参数?

How do I get all the query string params from a request?

我设置了一个简单的 gevent wsgi 服务器,不会暴露给外界。我正在尝试获取所有查询字符串参数,但只能获取第一个:

from gevent.pywsgi import WSGIServer
from cgi import parse_qs
...
...
d = parse_qs(env.get('QUERY_STRING',''))
print d

curl localhost:5000?goat=pig&piano=吉他版画:

{'goat': ['pig']}

如何获取所有参数:

{'goat': ['pig'], 'piano': ['guitar']}

对于此类实用程序,您确实应该使用 Bottle 或 Flask 等 Web 框架。原因是它们是为此目的而设计的,并为您处理诸如请求 headers 和 JSON 之类的事情。

from bottle import route, request, response, template
@route('/forum')
def display_forum():
    forum_id = request.query.id
    page = request.query.page or '1'
    return template('Forum ID: {{id}} (page {{page}})', id=forum_id, page=page)

https://bottlepy.org/docs/dev/tutorial.html