Menyiarkan Data JSON Terus ke Bahagian Belakang FastAPI Tanpa UI Swagger
FastAPI membolehkan pengguna menyiarkan data JSON dengan mudah ke bahagian belakangnya, walaupun tanpa menggunakan dokumentasi automatik yang disediakan oleh Swagger UI. Artikel ini menyelidiki proses mudah untuk menyiarkan data terus ke URL bahagian belakang dan memaparkan hasil dalam penyemak imbas.
Mencipta Aplikasi FastAPI
Mulakan dengan mencipta asas Aplikasi FastAPI dengan operasi POST dan kelas model untuk menyahsiri muatan JSON:
<code class="python">from fastapi import FastAPI from pydantic import BaseModel class Item(BaseModel): name: str roll: int app = FastAPI() @app.post("/") async def create_item(item: Item): return item</code>
Melaksanakan Frontend Menggunakan JavaScript
Untuk bahagian hadapan, kami akan menggunakan Ambil API, yang membolehkan kami menghantar data JSON terus ke URL hujung belakang.
<code class="javascript">fetch('/', { method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify({name: "XYZ", roll: 51}) }) .then(resp => resp.text()) .then(data => { console.log(data); // Display the result in the browser }) .catch(error => { console.error(error); });</code>
Dalam skrip ini, kami membuat permintaan POST, menyatakan pengepala yang betul dan menukar data kepada rentetan JSON. Respons pelayan kemudiannya dipaparkan dalam penyemak imbas.
Kaedah Alternatif
Pendekatan lain untuk menyiarkan data ke bahagian belakang FastAPI termasuk:
Kesimpulan
Menyiarkan data JSON ke bahagian belakang FastAPI tanpa Swagger UI ialah proses mudah yang memerlukan penggunaan JavaScript untuk menghantar data terus ke URL bahagian belakang. Anda boleh memilih daripada pelbagai kaedah yang paling sesuai dengan keperluan anda, sama ada penyerahan data berasaskan borang atau gabungan fail dan data borang/JSON.
Atas ialah kandungan terperinci Bagaimana untuk Menyiarkan Data JSON ke Backend FastAPI Tanpa UI Swagger?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!