[英]Why does Flask 'POST' not return a simple JSON object?
我試圖找到收效甚微類似的問題(或文件),所以我會很感激,如果有人能在我已經錯了這里那里的方向指向我。
在 Python 3 中,我使用 Flask 接收 JSON 的 HTTP 請求並返回它們。
from flask import Flask, request
app=Flask(__name__, template_folder='')
@app.route('/json', methods=['POST'])
def json():
return format(request)
我正在使用 Postman 將以下內容 POST 到 127.0.0.1/json(確認:127.0.0.1/json 如果我只是要求它返回“Hello World”,則它工作得很好):
{
"test":"Hello World"
}
然后郵遞員回復:
<Request 'http://127.0.0.1:5000/json' [POST]>
到現在為止還挺好。 但它報告有一個“屬性名稱中的無效字符”。
此外,當我將 Python 腳本更改為:
from flask import Flask, request
app=Flask(__name__, template_folder='')
@app.route('/json', methods=['POST'])
def json():
return format(request.get_json())
腳本向 Postman 返回“None”,盡管 JSON 對象被 POST 到它。
非常感謝任何可以為我澄清這一點的人。 我通常嘗試調試自己,但這讓我真的難住了幾個小時。 我敢肯定我在做一些非常愚蠢的事情! 非常感謝!
好的,無論出於何種原因,JSON 對象沒有被解析為“application/json”,我解決了這個問題:
return format(request.get_json(force=True))
參數 force=True 無論如何都會處理 JSON。
非常感謝大家的幫助! 希望這可以幫助其他有點困惑的人......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.