2016-11-24 98 views
-1

如何使用flask shell/cli或任何其他選項,以在非中斷的方式我跑步瓶的應用程序進行交互,所以PDB不好......如何在燒瓶應用程序運行時與它們進行交互?

例如假設我有以下應用:

from flask import Flask, request 


app = Flask(__name__) 
received_data = [] 


@app.route('/', methods=['POST']) 
def slash(): 
    data = request.data 
    if data not in received_data: 
     received_data.append(data) 
    return request.data 

if __name__ == '__main__': 
    app.run(debug=True) 

我送一對夫婦的請求:

➤➤ curl -X POST -H 'Content-Type: application/json' http://127.0.0.1:5000 -d {'a':'1'} 
> {a:1} 

➤➤ curl -X POST -H 'Content-Type: application/json' http://127.0.0.1:5000 -d {'b':'2'} 
> {b:2} 

... 

現在我想啓動一個控制檯,並以非中斷的方式檢查全局變量received_data的價值,而應用程序仍在運行。此外,我想用類似的方式,以軌道控制檯應用程序,你可以做互動:app.get,app.post,例如:app.post('/', {"this" => "that"})

+0

爲什麼你需要這樣的東西? – opalczynski

+0

@SebastianOpałczyński也許這個例子不是很好。我想在控制檯運行時使用控制檯與應用程序進行交互......就像你可以使用控制檯控制檯一樣......例如,我想訪問我的模型而不是查詢db – skamsie

+0

哦,得到它 - 類似django shell :) – opalczynski

回答

0

你所要做的就是添加一個端點

@app.route('/get', methods=['GET']) 
def getData(): 
    print(received_data) 
    return "OK", 200 
+0

好的,控制檯部分在哪裏? – skamsie

相關問題