【问题标题】:Redirecting Links From Submitted HTML Form Value With Flask [duplicate]使用 Flask 从提交的 HTML 表单值重定向链接 [重复]
【发布时间】:2018-08-29 13:55:31
【问题描述】:

我的 Flask 网站上有一个搜索栏,当用户单击搜索按钮时效果很好(我正在使用带有 POST 请求的 JS 代码)。但是,当用户通过“输入”单击发送表单时,它不起作用。在这些情况下,浏览器会加载类似/?finder=searchedword 的链接。

finder 是用于表单的 html 代码的 name 属性的值。为了解决这个问题,我尝试设置一个重定向,总是重定向到应该加载的正确链接,但不幸的是,使用这个解决方案不起作用。它只是简单地重定向到主页"/"

这就是我管理重定向的方式:

@app.route("/?finder=<tag>")
def search(tag):
    t = tag.replace(' ', '-')
    return redirect("/result/%s/" % (t,), code=301)

我的问题是处理这种重定向的正确技术是什么?这种重定向总是对我有用,我在几个应用程序中使用它,因此我不知道实现的薄弱部分是什么。

【问题讨论】:

    标签: python flask


    【解决方案1】:

    问号后面实际上并不是路由的一部分,而是页面的参数。所以 Flask 只是匹配 url “/”。

    试试这样的:

    @app.route("/")
    def search():
        if "finder" in request.args:
            t = request.args["finder"].replace(" ", "-")
            return redirect("/result/%s/" % (t,), code=301)
    

    【讨论】:

      猜你喜欢
      • 2015-12-11
      • 1970-01-01
      • 2017-05-16
      • 2020-09-14
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2017-12-14
      • 1970-01-01
      相关资源
      最近更新 更多