获取flask应用程序的所有查看功能的列表

获取flask应用程序的所有查看功能的列表,flask,Flask,给定一个flask应用程序,如何提取最终呈现发送给它的请求结果的所有视图函数 我之所以问这个问题,是因为我正在使用一个名为的flask扩展,它要求您在swagger规范和文档中使用您希望最终使用的每个函数来调用它。答案是flask应用程序本身上的一个名为的字段 为了生成api文档,我最终遍历了该字典: for key, view in app.view_functions.items(): if key.startswith('api'): docs.register(view, e

给定一个flask应用程序,如何提取最终呈现发送给它的请求结果的所有视图函数


我之所以问这个问题,是因为我正在使用一个名为的flask扩展,它要求您在swagger规范和文档中使用您希望最终使用的每个函数来调用它。

答案是flask应用程序本身上的一个名为的字段

为了生成api文档,我最终遍历了该字典:

for key, view in app.view_functions.items():
  if key.startswith('api'):
    docs.register(view, endpoint=key)

这将为您提供一个视图函数列表,但是如果要求它们呈现某些内容(许多AJAX处理程序都没有),那么您需要深入挖掘。我不确定我是否理解其中的区别。你能举一个不呈现任何内容的视图函数的例子吗?假设你的web应用注册了一个javascript“onclick”处理程序,当点击一个图标时,它会发出一个AJAX调用。处理程序记录单击。好的做法是返回一个JSON对象,并注明成功完成,但有些人会选择捷径,假设成功。在后一个事件中,视图的返回值(不是HTML)被忽略。啊,那么你是指仅返回HTTP响应代码的端点或请求处理程序?是的。这不是一个最佳实践,但却是一个相当普遍的实践。不过,如果你选择不在你的应用程序中这样做,这种方法也可以。