플라스크 jsonify

Haider Ali 2023년6월21일
  1. flask.jsonify()json.dumps() 사용
  2. json.dumps() 메서드
  3. flask.jsonify() 함수
플라스크 jsonify

이 가이드는 jsonify가 무엇인지 확인하고 flask에서 덤프합니다. flask.jsonifyjson.dump의 용도는 무엇이며 차이점은 무엇입니까?

그럼 더 이상 기다리지 않고 바로 들어가 보겠습니다.

flask.jsonify()json.dumps() 사용

이 두 함수 사이에는 약간의 차이만 있기 때문에 flask.jsonify()json.dumps()를 혼동하는 사람들이 점점 더 많아지는 것 같습니다.

작동 방식 측면에서 둘 사이의 차이점은 처음에 보이는 것처럼 어렵지 않습니다.

이러한 차이점을 쉽게 이해할 수 있도록 json.dumps()flask.jsonify()를 사용해야 하는 주요 질문에 답해 보겠습니다. 그러나 먼저 json.dumps()가 무엇인지 살펴보겠습니다.

json.dumps() 메서드

먼저 JSON 파일을 읽거나 쓰는 동안 json 패키지를 사용해야 합니다. 이 패키지에는 Python으로 작성된 데이터를 JSON 파일로 변환하는 json.dumps()라는 메서드가 포함되어 있습니다.

이 메서드는 Python으로 작성된 모든 데이터를 변환하고 문자열로 반환하며 이제 JSON 파일로 읽힙니다.

json.dumps() 메서드의 예는 도시 목록의 이름을 지정하는 데 사용됩니다.

@app.route("/")  # display on "home" page
def list_of_cities_dumps():
    cities = [
        {"name": "Central City", "country": "USA"},
        {"name": "Ottawa", "country": "Canada"},
    ]
    return json.dumps(
        cities
    )  # json.dump() method is being used to call the list of cities


if __name__ == "__main__":
    app.run(debug=True)

출력:

[{'name': 'Central City', 'country': 'USA'}, {'name': 'Ottawa', 'country': 'Canada'}]

위의 예와 같이 도시 목록의 출력이 표시됩니다. 읽을 수 있지만 사용자가 학교 학생에 대한 데이터를 가지고 있다고 상상해보십시오.

명확한 데이터 구성이 없기 때문에 이 방법을 사용하면 학생을 구분하기 어려울 것입니다.

그래서 이 결함을 극복하기 위해 flask.jsonify() 함수가 도입되었습니다.

flask.jsonify() 함수

flask.json 모듈에서 jsonify는 Flask의 함수입니다. Flask 프레임워크를 사용할 때 HTTP 응답으로 데이터를 보내려면 flask.jsonify() 함수를 사용해야 합니다.

이 기능을 사용하려면 flask를 가져와야 합니다.

이 함수는 데이터를 JSON 파일로 변환한 다음 서버가 클라이언트 요청에 응답하는 데 사용되는 응답 개체를 반환합니다.

변환된 JSON 파일은 새로 생성된 응답 객체에 추가됩니다. 콘텐츠 유형 헤더 필드를 application/JSON으로 설정하면 일반적으로 미디어 유형으로 알려진 적절한 MIME 유형도 추가됩니다.

미디어 유형 또는 MIME 유형과 함께 파일을 보낼 때 메시지와 함께 파일 유형을 나타냅니다.

위의 동일한 예를 통해 flask.jsonify()의 작업을 더 자세히 이해해 보겠습니다.

@app.route("/")  # displays on the "home" page
def list_of_cities():
    cities = [
        {"name": "Central City", "country": "USA"},
        {"name": "Ottawa", "country": "Canada"},
    ]
    return jsonify(
        cities
    )  # the function jsonify is used here to call the list of cities


if __name__ == "__main__":
    app.run(debug=True)

출력:

[
  {
    "country": "USA",
    "name": "Central City"
  },
  {
    "country": "Canada",
    "name": "Ottawa"
  }
]

출력에서 볼 수 있듯이 도시 목록의 출력은 json.dumps() 메서드를 사용했을 때와 비교하여 구성되고 이해하기 쉽습니다.

아래 코드는 두 예제의 조합입니다.

from flask import Flask, jsonify
import json

app = Flask(__name__)


@app.route("/")
def list_of_cities():
    cities = [
        {"name": "Central City", "country": "USA"},
        {"name": "Ottawa", "country": "Canada"},
    ]
    return jsonify(cities)


@app.route("/1")
def list_of_cities_dumps():
    cities = [
        {"name": "Central City", "country": "USA"},
        {"name": "Ottawa", "country": "Canada"},
    ]
    return json.dumps(cities)


if __name__ == "__main__":
    app.run(debug=True)
작가: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn