我正在编写一个小型 API,并希望打印所有可用方法的列表以及相应的“帮助文本”(来自函数的文档字符串)。从这个答案开始,我写了以下内容:
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/api', methods = ['GET'])
def this_func():
"""This is a function. It does nothing."""
return jsonify({ 'result': '' })
@app.route('/api/help', methods = ['GET'])
"""Print available functions."""
func_list = {}
for rule in app.url_map.iter_rule():
if rule.endpoint != 'static':
func_list[rule.rule] = eval(rule.endpoint).__doc__
return jsonify(func_list)
if __name__ == '__main__':
app.run(debug=True)
有没有更好——更安全——的方式来做到这一点?谢谢。