Bagaimana untuk mengembalikan data dalam format JSON menggunakan FastAPI?
Untuk mengembalikan data dalam format JSON menggunakan FastAPI, anda boleh menggunakan pengekod jsonable_encoder untuk menukar struktur data Python kepada data yang serasi dengan JSON. Ini boleh dicapai menggunakan salah satu daripada pilihan berikut:
Pilihan 1: Menggunakan jsonable_encoder Secara Automatik
Kembalikan data seperti biasa dan FastAPI akan mengendalikan penukaran JSON secara automatik. FastAPI secara dalaman menggunakan jsonable_encoder untuk menukar data kepada format yang serasi dengan JSON. Jsonable_encoder memastikan objek yang tidak disokong, seperti objek datetime, ditukar kepada rentetan. FastAPI kemudian membungkus data dalam objek JSONResponse dengan jenis media aplikasi/json, yang pelanggan terima sebagai respons JSON.
from fastapi.encoders import jsonable_encoder from fastapi.responses import JSONResponse def return_dict(): data_dict = {"name": "John Doe", "age": 30} return JSONResponse(content=jsonable_encoder(data_dict))
Pilihan 2: Penukaran JSON Manual
Jika anda perlu melakukan penukaran JSON tersuai, anda boleh terus mengembalikan objek Respons dengan set media_type kepada 'application/json' dan set kandungan kepada data berkod JSON. Ingat untuk menggunakan fungsi json.dumps() dengan argumen default=str untuk memastikan objek yang tidak disokong ditukar kepada rentetan sebelum dikodkan sebagai JSON.
import json from fastapi import Response def return_response(): data_dict = {"name": "John Doe", "age": 30} json_data = json.dumps(data_dict, default=str) return Response(content=json_data, media_type="application/json")
Nota Tambahan:
Atas ialah kandungan terperinci Bagaimana untuk Mengembalikan Data JSON dalam FastAPI: Penukaran Automatik lwn Manual?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!