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"
'python' 카테고리의 다른 글
[python3] list/set/dict comprehension 예시 (0) | 2019.08.20 |
---|---|
구글에서 만든 파이썬 CLI 예시 (0) | 2019.04.23 |
[python] subprocess- paramiko 예시 (부제 - TypeError: startswith first arg must be bytes or a tuple of bytes, not str 해결하기) (0) | 2018.12.28 |
[python] pre-commit 추가하기 (0) | 2018.11.09 |
flask에서 개발할 때 jsonify, json.dump 없이 json 응답 보내기 (0) | 2018.11.08 |