【问题标题】:Get dict from query string/post data in Tornado web server?从 Tornado Web 服务器中的查询字符串/发布数据中获取字典?
【发布时间】:2014-12-12 13:15:21
【问题描述】:

也许我遗漏了一些东西,如果我编写 PHP 代码,这应该很容易,但奇怪的是我无法在 python tornado web 服务器中处理这个基本的东西。

Tornado 网络服务器收到这样的请求:

http://example.com/?a[x]=1&a[y]=2&a[z]=3&b=4

我需要将 a 作为 python 中的字典

在龙卷风中:

class BaseHandler(tornado.web.RequestHandler):

    def get(self):
        print self.get_argument('a') #failed 
        print self.get_arguments('a') #failed 

任何现成可用的解决方案,或者让我编写自定义方法来解析 self.request.query_arguments

有什么建议吗?

【问题讨论】:

    标签: python url dictionary query-string tornado


    【解决方案1】:

    PHP(我认为是 Ruby)可能会特别处理参数名称中的括号,但这不是标准的。就 python 和 tornado 而言,这些只是名为 a[x]a[y] 等的简单参数。要将它们重新组合成字典,您需要从 self.request.query_arguments 中解析它们。

    【讨论】:

      【解决方案2】:

      self.get_argument('a[x]')

      但从未见过有人写这样的网址

      您可能需要 json 转储字符串并在 http 正文中对其进行变形

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-11-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多