[英]return empty JSON by Flask
我有一個簡單的函數,應該返回JSON。
@app.route('/storage/experiments', methods=['GET'])
def get_experiments():
if not request.json:
abort(400)
experiments = db['experiments']
cursor = experiments.find(request.get_json())
print(dumps(cursor))
resp = Response(response=dumps(cursor),
status=200, \
mimetype="application/json")
return resp
print(dumps(cursor))顯示
[{"current": "11", "date": "12.12.2001", "_id": {"$oid": "551c7b642349c517f5fa5223"}, "name": "xaxa", "voltage": "34"}]
但返回空括號[]
您可以使用flask模塊的jsonify函數。
克里斯蒂安( Edit Chrisitian)是對的,我沒有注意到您正在使用列表。 無論如何,這是我為解決這個問題而寫的一個裝飾器: Json decorator 。 希望這可以幫助。
我想這是因為happneing數據庫光標(我不知道你用什么數據庫框架。 sqlalchemy
?)在您的數據集的終點,當你想退貨,因為你print()
語句來已經在它遍歷。 當您只注釋掉print()
語句時,它應該與此代碼一起工作,因為在此代碼中我看不到任何其他錯誤:
@app.route('/storage/experiments', methods=['GET'])
def get_experiments():
if not request.json:
abort(400)
experiments = db['experiments']
cursor = experiments.find(request.get_json())
#print(dumps(cursor))
resp = Response(response=dumps(cursor),
status=200, \
mimetype="application/json")
return resp
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.