flask 코드에서 post 바디에 있는 json을 출력하는 코드이다.



요청의 헤더가 content-type:text/html이라면 아래 코드에서 request.get_json()의 값은 None이 된다.





from flask import Flask, request
import json
app = Flask(__name__)

@app.route("/", methods=['GET', 'POST'])
def hello():
maybe_json = request.get_json(silent=True, cache=False)
if maybe_json:
thejson = json.dumps(maybe_json)
else:
thejson = "no json"
print(thejson)
return "good job"



요청 헤더를 json으로 수정하거나 서버 코드를 아래과 같이 get_json(force=True)를 추가하면 잘 동작한다.





from flask import Flask, request
import json
app = Flask(__name__)

@app.route("/", methods=['GET', 'POST'])
def hello():
maybe_json = request.get_json(silent=True, cache=False, force=True)
if maybe_json:
thejson = json.dumps(maybe_json)
else:
thejson = "no json"
print(thejson)
return "good job"


Posted by 김용환 '김용환'