尝试从flask中的html表单在url中传递两个参数,然后在python程序中运行

问题描述

我对此很陌生,我有一个 python 算法,我想使用从 html 表单中获取的两个参数运行该算法。这是我的 html 代码

<form action="result/">
      <p><input class="w3-input w3-padding-16" method = "post" type="text" placeholder="Playlist URI" required name="URI"></p>
      <p><input class="w3-input w3-padding-16" method = "post" type="text" placeholder="Spotify Username" required name="Username"></p>
      <p>
        <button class="w3-button w3-light-grey w3-padding-large" type="submit">
          <i class="fa fa-paper-plane"></i> Submit
        </button>
      </p>
    </form>

当我在表单中输入 b 和 c 时,它会将我重定向http://127.0.0.1:5000/result/?URI=b&Username=c

我不知道如何接受它们作为参数,它只是返回这个错误

404 未找到
在服务器上找不到请求的 URL。如果您手动输入网址,请检查拼写并重试。

我的python代码如下所示:

@app.route('/result.html/<URI>&<username>')
def result(URI,username):
    return render_template("result.html",uri=URI,username=username)

解决方法

您可以使用flask中的请求访问get请求中的参数

示例:

from flask import Flask,request

app = Flask(__name__)

@app.route("/result.html")
def result():
    uri = request.args.get("uri")
    username = request.args.get("username")