gpt4 book ai didi

python - python flask中的模块化路由

转载 作者:太空宇宙 更新时间:2023-11-04 05:39:48 26 4
gpt4 key购买 nike

我正在尝试使用一项服务来实现两个相关功能。我希望我的 REST api 有这样的东西:

/route1/get/as_text

/route2/get/as_json

在 nodejs 中,你可以通过以下语句从一些基本 URL 传递一组路由:

app.use('/route1/', route1.js)
app.use('/route2/', route2.js)

然后 route1.js 将具有如下定义的路由:

app.router('/as_text', function(){//some stuff})

当我这样做时,可以定义一组路由,所有路由都以 /route1/ 作为 URL 的基础。我想在 flask 中做一些类似的事情,我只定义了 url 的第一部分,并将 API 该部分的所有逻辑添加到一个文件中,该文件与 api 的另一部分分开。

这在 flask 中可能吗?还是我应该寻找一种新方法?

最佳答案

你会想看看Blueprints .

定义应用程序时,您可以使用路径前缀注册蓝图:

app = Flask(__name__, template_folder='views')
app.register_blueprint(controllers.route1, url_prefix="/route1")
app.register_blueprint(controllers.route2, url_prefix="/route2")

然后在单独的文件中为这些路由定义 Controller 。

route1 = Blueprint('route1', __name__, template_folder='views')

@route1.route('/get/as_text',methods=['GET'])
def get_as_text_route():

return json.jsonify(data="my data")

您还可以查看 Flask Restful用于在 Flask 中创建 REST API。

关于python - python flask中的模块化路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34323265/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com