小能豆

从 Flask 路由中的 URL 获取变量

javascript

我有许多 URL,它们landingpage以唯一的 ID 开头和结尾。我需要能够从 URL 中获取 ID,以便我可以将一些数据从另一个系统传递到我的 Flask 应用程序。我如何获取这个值?

http://localhost/landingpageA
http://localhost/landingpageB
http://localhost/landingpageC

阅读 56

收藏
2024-07-31

共1个答案

小能豆

文档的快速入门中已经解答了这个问题。

<name>您需要一个变量 URL,通过在 URL 中添加占位符并name在视图函数中接受相应的参数来创建它。

@app.route('/landingpage<id>')  # /landingpageA
def landing_page(id):
    ...

更典型的是,URL 的各个部分用 分隔/

@app.route('/landingpage/<id>')  # /landingpage/A
def landing_page(id):
    ...

用于url_for生成页面的 URL。

url_for('landing_page', id='A')
# /landingpage/A

您还可以将值作为查询字符串的一部分传递,并从请求中获取它,但如果始终需要它,最好使用像上面那样的变量。

from flask import request

@app.route('/landingpage')
def landing_page():
    id = request.args['id']
    ...

# /landingpage?id=A
2024-07-31