FastAPI স্বয়ংক্রিয়ভাবে API ডকুমেন্টেশন তৈরি করে, যা ডেভেলপমেন্ট ও টেস্টিংকে অনেক সহজ করে তোলে। FastAPI এর ডকুমেন্টেশন দুটি ফরম্যাটে সরবরাহ করে:
- Swagger UI
- ReDoc
Swagger UI
Swagger UI হলো FastAPI দ্বারা স্বয়ংক্রিয়ভাবে তৈরি করা একটি ইন্টারেক্টিভ ডকুমেন্টেশন টুল। এটি OpenAPI স্পেসিফিকেশনের ভিত্তিতে API এর সব এন্ডপয়েন্ট এবং তাদের ফিচার প্রদর্শন করে।
বৈশিষ্ট্য:
- ইন্টারেক্টিভ টেস্টিং:
ডকুমেন্টেশনের মধ্যেই API রিকোয়েস্ট পাঠানো এবং রেসপন্স দেখা যায়। - সহজ নেভিগেশন:
প্রতিটি এন্ডপয়েন্টের বিস্তারিত প্রদর্শন করে, যেমন ইনপুট প্যারামিটার, আউটপুট, এবং স্ট্যাটাস কোড। - ব্যবহারকারীবান্ধব:
নতুন এবং অভিজ্ঞ ডেভেলপার উভয়ের জন্যই সহজে ব্যবহারযোগ্য।
Swagger UI অ্যাক্সেস:
FastAPI অ্যাপ চালু করার পর Swagger UI ডকুমেন্টেশন দেখতে ব্রাউজারে যান:
http://127.0.0.1:8000/docs
ReDoc
ReDoc একটি আরও বিস্তারিত ডকুমেন্টেশন টুল, যা API এর গঠন ও ফিচারগুলো আরও পরিষ্কারভাবে উপস্থাপন করে। এটি ডেভেলপমেন্ট দল এবং API ব্যবহারকারীদের জন্য বিশেষভাবে কার্যকর।
বৈশিষ্ট্য:
- বিস্তৃত ডকুমেন্টেশন:
প্রতিটি এন্ডপয়েন্টের বিস্তারিত তথ্য, যেমন ইনপুট ফিল্ড, ডাটা টাইপ, এবং সিকিউরিটি প্রটোকল। - উন্নত প্রেজেন্টেশন:
প্রতিটি ফিচার সুন্দরভাবে গঠিত। - মোবাইল-বান্ধব:
মোবাইল ডিভাইসেও সহজে দেখা যায়।
ReDoc অ্যাক্সেস:
FastAPI অ্যাপ চালু করার পর ReDoc ডকুমেন্টেশন দেখতে ব্রাউজারে যান:
http://127.0.0.1:8000/redoc
ডকুমেন্টেশন উদাহরণ
উদাহরণস্বরূপ, যদি আপনার অ্যাপ এই রকম কোড দিয়ে তৈরি হয়:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"message": "Hello, FastAPI!"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "query": q}
Swagger UI এন্ডপয়েন্ট:
http://127.0.0.1:8000/docs
এটি দেখাবে:
/রুট এন্ডপয়েন্ট/items/{item_id}ডাইনামিক এন্ডপয়েন্ট
ReDoc এন্ডপয়েন্ট:
http://127.0.0.1:8000/redoc
এটি একই তথ্য আরও বিস্তারিত এবং গঠিত আকারে প্রদর্শন করবে।
কাস্টমাইজেশন
FastAPI এর ডকুমেন্টেশন কাস্টমাইজ করতে পারবেন:
ডকুমেন্টেশনের শিরোনাম:
অ্যাপ অবজেক্ট তৈরি করার সময়titleপ্যারামিটার ব্যবহার করুন:app = FastAPI(title="My FastAPI Application")ডকুমেন্টেশনের বিবরণ:
descriptionপ্যারামিটার যোগ করুন:app = FastAPI(description="This is a sample FastAPI application")ডকুমেন্টেশন অফ করা:
Swagger UI বা ReDoc বন্ধ করতে:app = FastAPI(docs_url=None, redoc_url=None)
Swagger UI এবং ReDoc এর তুলনা
| বৈশিষ্ট্য | Swagger UI | ReDoc |
|---|---|---|
| ব্যবহারকারীবান্ধবতা | সহজ এবং ইন্টারেক্টিভ | বিস্তারিত এবং গঠিত |
| ইন্টারেক্টিভ টেস্টিং | হ্যাঁ | না |
| উন্নত প্রেজেন্টেশন | সাধারণ | উন্নত |
| মোবাইল সাপোর্ট | সীমিত | সম্পূর্ণ মোবাইল-বান্ধব |
FastAPI এর স্বয়ংক্রিয় ডকুমেন্টেশন ডেভেলপারদের জন্য একটি বড় সুবিধা। Swagger UI সহজে API পরীক্ষা করতে দেয়, আর ReDoc বিস্তারিত এবং প্রেজেন্টেশন-বান্ধব ডকুমেন্টেশন সরবরাহ করে। উভয় ডকুমেন্টেশন টুল FastAPI এর শক্তিশালী এবং ব্যবহারবান্ধব বৈশিষ্ট্যকে আরও উন্নত করে।
Read more