반응형

Flask에서 JSON을 응답하는 것을 살펴봅니다. 



Flask의 Quickstart 문서를 보며 진행한 과정을 작성한 글입니다. 

https://flask.palletsprojects.com/en/2.0.x/quickstart/ 

 

부족한 부분이나 이상한 부분이 있을 수 있습니다. 

 

개발 환경 구축은 다음 포스트를 참고하세요

 

Windows 10 환경에서 Visual Studio Code와 Miniconda를 사용한 Flask 개발 환경 만들기

https://webnautes.tistory.com/1522 

 

Miniconda를 설치하지 않고  pip install flask 명령으로 해도 상관은 없습니다.



2021. 12. 25  최초작성.




json1.py 로  저장합니다. 

 

from flask import Flask


app = Flask(__name__)

def get_current_user():

    # 딕셔너리를 리턴합니다.
    user = {
        "username": "webnautes",
        "theme": "webnautes's theme",
        "image": 'https://cdn.pixabay.com/photo/2015/04/23/22/00/tree-736885__480.jpg'
    }
    return user

@app.route("/me")
def me_api():
    user = get_current_user()
    return {
        "username": user.get("username"),
        "theme": user.get("theme"),
        "image": user.get("image")
    }

 

다음처럼 실행합니다.

 

set FLASK_APP=json1

flask run



웹브라우저에서 http://127.0.0.1:5000/me 에 접속하면 JSON이 출력됩니다. 

 




딕셔너리가 아닌 타입에 대한 JSON 응답을 해야 한는 경우에는  jsonify() 함수를 사용하십시오.  



json2.py로 저장합니다. 



from flask import Flask, jsonify


app = Flask(__name__)


@app.route("/users")
def users_api():
   
    return jsonify(
        user='webnautes',
        country='korea'
    )



다음처럼 실행합니다.

 

set FLASK_APP=json2

flask run



웹브라우저에서 http://127.0.0.1:5000/users  에 접속하면 JSON이 출력됩니다. 

 

 

문제 발생시 지나치지 마시고 댓글 남겨주시면 가능한 빨리 답장드립니다.


제가 쓴 책도 한번 검토해보세요 ^^

+ Recent posts