我的网站上有一些可爱的(斯堪的纳维亚人?)用户抱怨我无法在 URL 中解析他的用户名,因此我在我的网站上的页面上没有向他显示任何结果。
我很确定浏览器将请求编码为 http://councilroom.com/player?player=G%C3%B6rling
我想让播放器字符串成为 Görling 而不是被转换为的 Görling。
我正在将 web.py 与 python 2.6 一起使用,并尝试按如下方式解析 URL
parsed_url = urlparse.urlparse(web.ctx.fullpath)
query_dict = dict(urlparse.parse_qsl(parsed_url.query))
target_player = query_dict['player']
编辑:在 unutbu 的帮助下,我将其更改为
query_dict = dict(urlparse.parse_qsl(web.ctx.env['QUERY_STRING']))
target_player = query_dict['player'].decode('utf-8')
我认为 webpy 以某种方式错误地解析了 web.ctx 中的完整路径,但 QUERY_STRING 变量没有受到干扰。