当前位置: 首页 > 面试题库 >

flask:获取当前路线

农雅畅
2023-03-14
问题内容

在Flask中,当我为同一功能使用多个路由时,如何知道当前使用的是哪个路由?

例如:

@app.route("/antitop/")
@app.route("/top/")
@requires_auth
def show_top():
    ....

我怎么知道,现在我被称为使用/top//antitop/

更新

我知道request_path我不想使用它,因为请求可能相当复杂,并且我想在函数中重复路由逻辑。我认为url_rule最好的解决方案。


问题答案:

检查触发你的视图的路线的最“轻松”方法是request.url_rule。

from flask import request

rule = request.url_rule

if 'antitop' in rule.rule:
    # request by '/antitop'

elif 'top' in rule.rule:
    # request by '/top'


 类似资料:
  • 当前文档只讨论获取路由参数,而不是实际的路由段。 例如,如果我想找到当前路由的父级,怎么可能?

  • 如何使用react router v4获取当前路径? 我尝试了以下方法,但没有成功: 错误: 这是我的Routes.js文件:

  • 在此URL中: 我想抓,当然是在路由里面。这工作很棒: 但是我想访问任何路由之外的路径以及文件如下:

  • 问题内容: 在实现持久性底部栏时,单击底部栏中的按钮时,需要恢复以前的路线。 单击底部栏中的按钮时,将保存其当前路径路径(/ a / b / c ),并根据该按钮单击恢复先前保存的路径。 从概念上讲,用户会将每个按钮视为一个工作区,并且其状态永远不会丢失(包括后退堆栈)。用户可以安全地从一个工作区切换到另一个工作区。 当路由重绕到根时,如何在Flutter中获取当前路由路径? 问题答案: 不会公开

  • 问题内容: 使用Flask,如何获得flask连接的当前端口号?我想使用端口0在随机端口上启动服务器,但是我还需要知道我在哪个端口上。 编辑 我认为我已经找到解决该问题的方法,尽管它不能解决问题。我可以遍历以49152开头的端口,并尝试通过使用该端口。我可以在块中执行此操作,以便在出现错误时可以尝试下一个端口。 问题答案: 你无法轻易获得Flask使用的服务器套接字,因为它隐藏在标准库的内部(Fl

  • 问题内容: 我需要从当前请求的URL获取路径。例如,如果当前URL是: 我想要这个: 问题答案: 你要。从文档: 为了访问该页面而给出的URI;例如,。