【问题标题】:how to pass GET parameters with Flask using add_url_rule如何使用 add_url_rule 通过 Flask 传递 GET 参数
【发布时间】:2022-01-03 22:16:13
【问题描述】:

初学者的问题: 是否可以使用 add_url_ruleGET 请求参数传递给 Flask 中的路由函数?

我收到错误消息,即我稍后声明的 verify_username_route 函数(需要 1 个参数)在没有传递任何参数的情况下被调用。

self.application_.add_url_rule(self.path_ + '/verify', 'verify', self.verify_username_route, methods=['GET'])

【问题讨论】:

    标签: python flask


    【解决方案1】:

    要获取查询字符串参数,请在函数中使用request.args.get('argname')。什么都没有传入——都是通过全局变量完成的。

    【讨论】:

      【解决方案2】:

      要在 URL 中传递任何参数,您可以使用 Flask 的内置模式。这些对@app.route 装饰器和add_url_route 方法都有效。这是您的代码,带有一个参数:

      self.application_.add_url_rule(self.path_ + '/verify/<int:val>', 'verify', self.verify_username_route, methods=['GET'])
      

      其中重要的部分是确切的路线:/verify/&lt;int:parameter&gt;。这告诉 Flask 你希望路由采用/verify/something 的格式,其中的东西是任何整数。发出请求时在此处输入的任何整数都会作为名为 val 的参数传递给您的 self.verify_username_route

      阅读更多关于here的信息。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-14
        • 1970-01-01
        • 2018-10-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多