2017-10-12 57 views
0

我是python web框架的初學者,我創建了一個簡單的Python-Flask RESTful API,它使我可以使用GET請求從數據庫獲取信息,但是我遇到問題在我如何使用這個API與任何網站基於python的框架,因爲我知道每個框架都有自己的方式來與代碼的Url合作,所以它不會只是將.py文件添加到網站文件,並從Url喜歡PHP,所以我怎麼能使用這個燒瓶APi在任何網站與Python框架(Django,燒瓶,..等)?謝謝。如何在任何python框架中使用python flask RESTful 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') 
+0

是否要將此API添加到另一個項目或從另一個Python項目訪問此API? – JRajan

+0

我想將這個appi添加到另一個python項目中,它可以用Django或任何web框架編寫。@ JRajan –

回答

1

如果你有一個flask網站,你可以只是代碼添加到現有的文件,它會工作,但它是更好地使用blueprints。藍圖允許您將代碼分成更小的獨立應用程序,例如,您的網站的一部分有一個藍圖,另一個藍圖用於您的API。

如果你有一個django網站,你可以編寫你的API在django-restful。最好只使用一個框架,然後將應用程序的一部分寫在一個框架中,另一部分在另一個框架中。

還有一個選擇是讓你的API成爲一個單獨的網站,只是從任何其他網站發送請求。

+0

好吧,但是如果我有Django網站或其他框架,我該如何添加api代碼文件? –

+0

我沒有經驗,所以我沒有回答django或任何其他框架。抱歉。如果你想使用django,最好使用django-restful,然後編寫你的API,然後讓應用程序的一部分用django編寫,另一部分用燒錄器編寫。 – kemis

+0

好的,謝謝你的迴應,但我想用我的客戶網站這個api,所以我想使它與任何python框架一起工作。 –

相關問題