2.6 KiB
↔ 🗄
/// warning
👉 👍 🏧 ⚒. 👆 🎲 💪 🚶 ⚫️.
🚥 👆 📄 🔰 - 👩💻 🦮, 👆 💪 🎲 🚶 👉 📄.
🚥 👆 ⏪ 💭 👈 👆 💪 🔀 🏗 🗄 🔗, 😣 👂.
///
📤 💼 🌐❔ 👆 💪 💪 🔀 🏗 🗄 🔗.
👉 📄 👆 🔜 👀 ❔.
😐 🛠️
😐 (🔢) 🛠️, ⏩.
FastAPI 🈸 (👐) ✔️ .openapi() 👩🔬 👈 📈 📨 🗄 🔗.
🍕 🈸 🎚 🏗, ➡ 🛠️ /openapi.json (⚖️ ⚫️❔ 👆 ⚒ 👆 openapi_url) ®.
⚫️ 📨 🎻 📨 ⏮️ 🏁 🈸 .openapi() 👩🔬.
🔢, ⚫️❔ 👩🔬 .openapi() 🔨 ✅ 🏠 .openapi_schema 👀 🚥 ⚫️ ✔️ 🎚 & 📨 👫.
🚥 ⚫️ 🚫, ⚫️ 🏗 👫 ⚙️ 🚙 🔢 fastapi.openapi.utils.get_openapi.
& 👈 🔢 get_openapi() 📨 🔢:
title: 🗄 📛, 🎦 🩺.version: ⏬ 👆 🛠️, ✅2.5.0.openapi_version: ⏬ 🗄 🔧 ⚙️. 🔢, ⏪:3.0.2.description: 📛 👆 🛠️.routes: 📇 🛣, 👫 🔠 ® ➡ 🛠️. 👫 ✊ ⚪️➡️app.routes.
🔑 🔢
⚙️ ℹ 🔛, 👆 💪 ⚙️ 🎏 🚙 🔢 🏗 🗄 🔗 & 🔐 🔠 🍕 👈 👆 💪.
🖼, ➡️ 🚮 📄 🗄 ↔ 🔌 🛃 🔱.
😐 FastAPI
🥇, ✍ 🌐 👆 FastAPI 🈸 🛎:
{* ../../docs_src/extending_openapi/tutorial001.py hl[1,4,7:9] *}
🏗 🗄 🔗
⤴️, ⚙️ 🎏 🚙 🔢 🏗 🗄 🔗, 🔘 custom_openapi() 🔢:
{* ../../docs_src/extending_openapi/tutorial001.py hl[2,15:20] *}
🔀 🗄 🔗
🔜 👆 💪 🚮 📄 ↔, ❎ 🛃 x-logo info "🎚" 🗄 🔗:
{* ../../docs_src/extending_openapi/tutorial001.py hl[21:23] *}
💾 🗄 🔗
👆 💪 ⚙️ 🏠 .openapi_schema "💾", 🏪 👆 🏗 🔗.
👈 🌌, 👆 🈸 🏆 🚫 ✔️ 🏗 🔗 🔠 🕰 👩💻 📂 👆 🛠️ 🩺.
⚫️ 🔜 🏗 🕴 🕐, & ⤴️ 🎏 💾 🔗 🔜 ⚙️ ⏭ 📨.
{* ../../docs_src/extending_openapi/tutorial001.py hl[13:14,24:25] *}
🔐 👩🔬
🔜 👆 💪 ❎ .openapi() 👩🔬 ⏮️ 👆 🆕 🔢.
{* ../../docs_src/extending_openapi/tutorial001.py hl[28] *}
✅ ⚫️
🕐 👆 🚶 http://127.0.0.1:8000/redoc 👆 🔜 👀 👈 👆 ⚙️ 👆 🛃 🔱 (👉 🖼, FastAPI'Ⓜ 🔱):