【问题标题】:how to use python flask RESTful api with any python framework如何在任何 python 框架中使用 python flask RESTful api
【发布时间】:2017-10-12 09:08:56
【问题描述】:

我是 Python Web 框架的初学者,我创建了一个简单的 Python-Flask RESTful API,它使我能够使用 GET 请求从数据库中获取信息,但是我在如何将此 API 与任何网站 python 一起使用时遇到了问题基于框架,因为我知道每个框架都有自己的方式将 Url 与代码连接起来,所以它不会只是将 .py 文件添加到网站文件中并像 php 一样从 Url 调用它,所以如何我可以在任何具有 Python 框架(如(Django、Flask、..etc)的网站)中使用这个烧瓶 APi 吗?谢谢。

这是我的简单 API:

from flask import Flask, request
from flask_restful import Resource, Api
from sqlalchemy import create_engine
from json import dumps
from flask_jsonpify import jsonify
import MySQLdb
app = Flask(__name__)
api = Api(app)
db = MySQLdb.connect("localhost", "root", "root", "x")

class macros(Resource):
    def get(self):
        cursor = db.cursor()        
        cursor.execute("select * from survey_macro")  # This line will be changes from website to another      
        return jsonify({'macros':[i for i in cursor.fetchall()]})  

api.add_resource(macros, '/macros')  # Route_1

if __name__ == '__main__':
    app.run(port='5002')

【问题讨论】:

  • 您想将此 API 添加到另一个项目还是从另一个 Python 项目访问此 API?
  • 我想将此应用程序添加到另一个 python 项目中,它可能是用 Django 或任何 Web 框架编写的。@JRajan

标签: python rest api flask flask-restful


【解决方案1】:

如果您有一个flask 网站,您只需将该代码添加到现有文件中即可,但最好使用blueprints。蓝图允许您将代码分成更小的独立应用程序,例如,您的网站的一部分有一个蓝图,而您的 API 有另一个蓝图。

如果您有一个django 网站,您可以在django-restful 中编写您的API。最好只使用一个框架,然后将应用程序的一部分写在一个框架中,另一部分写在第二个框架中。

另一种选择是让您的 API 成为一个单独的网站,然后从任何其他网站向它发送请求。

【讨论】:

  • 好的,但是如果我有一个 Django 网站或其他框架,如何添加该 api 代码文件?
  • 我没有这方面的经验,所以我没有回答 django 或任何其他框架。对不起。如果您想使用 django,最好使用 django-restful 并在其中编写您的 API,然后将应用程序的一部分用 django 编写,另一部分用烧瓶编写。
  • 好的,感谢您的回复,但我想在我的客户网站上使用这个 api,所以我想让它与任何 python 框架一起使用。
  • API可以是不同的网站,你可以从任何其他网站向他发送请求:)
  • 要在f​​lask中使用此代码,我应该将其包含在现有file.py中还是放入新文件并将其推送到网站文件中?
猜你喜欢
  • 1970-01-01
  • 2014-10-27
  • 1970-01-01
  • 1970-01-01
  • 2021-07-22
  • 2015-02-04
  • 2015-10-05
  • 1970-01-01
  • 2014-09-09
相关资源
最近更新 更多