Flask এবং Django উভয়ই জনপ্রিয় Python ওয়েব ফ্রেমওয়ার্ক, যা দিয়ে আপনি ওয়েব অ্যাপ্লিকেশন এবং API তৈরি করতে পারেন। Flask এবং Django API তৈরিতে কিছু ভিন্নতা রয়েছে, তবে দুটি ফ্রেমওয়ার্কই RESTful API তৈরি করতে সহায়ক। নিচে Flask এবং Django ব্যবহার করে API তৈরি করার জন্য পদক্ষেপগুলি বিস্তারিতভাবে দেওয়া হলো।
১. Flask দিয়ে API তৈরি
Flask একটি মাইক্রোফ্রেমওয়ার্ক যা খুবই হালকা এবং সহজে কনফিগার করা যায়। Flask দিয়ে API তৈরি করতে হলে, সাধারণত Flask এবং Flask-RESTful লাইব্রেরি ব্যবহার করা হয়।
Flask দিয়ে API তৈরি করার ধাপ:
- প্রথমে Flask এবং Flask-RESTful ইনস্টল করুন:
pip install flask flask-restful
- Flask API তৈরি করা:
এখানে একটি সাধারণ API উদাহরণ দেওয়া হল যেখানে একটি GET এবং POST রিকোয়েস্ট হ্যান্ডল করা হচ্ছে।
from flask import Flask, request
from flask_restful import Api, Resource
app = Flask(__name__)
api = Api(app)
# একটি রিসোর্স ক্লাস তৈরি করা
class HelloWorld(Resource):
def get(self):
return {'message': 'Hello, World!'}
def post(self):
data = request.get_json() # JSON ডেটা গ্রহণ করা
return {'received_data': data}, 201
# রাউটিং সেট করা
api.add_resource(HelloWorld, '/')
if __name__ == '__main__':
app.run(debug=True)
- API চালানো:
উপরের কোডটি চালানোর পর, আপনার API http://127.0.0.1:5000/ এ চালু হবে। আপনি GET এবং POST রিকোয়েস্ট পাঠাতে পারেন।
- GET রিকোয়েস্ট:
http://127.0.0.1:5000/এ ব্রাউজারে প্রবেশ করলে আপনি{"message": "Hello, World!"}দেখতে পাবেন। - POST রিকোয়েস্ট: আপনি Postman বা CURL ব্যবহার করে JSON ডেটা পাঠাতে পারেন, যেমন:
{
"name": "Flask API"
}
এটি রেসপন্স হিসেবে {"received_data": {"name": "Flask API"}} ফেরত দেবে।
২. Django দিয়ে API তৈরি
Django একটি পূর্ণাঙ্গ ফ্রেমওয়ার্ক যা ডেটাবেস ইন্টিগ্রেশন, অ্যাডমিন প্যানেল, ইউজার অথেনটিকেশন ইত্যাদি নিয়ে একটি শক্তিশালী প্যাকেজ সরবরাহ করে। Django দিয়ে API তৈরি করতে সাধারণত Django Rest Framework (DRF) ব্যবহার করা হয়।
Django দিয়ে API তৈরি করার ধাপ:
- প্রথমে Django এবং Django Rest Framework ইনস্টল করুন:
pip install django djangorestframework
- Django প্রজেক্ট এবং অ্যাপ তৈরি করা:
django-admin startproject myproject
cd myproject
python manage.py startapp myapp
- Django Rest Framework যোগ করা:
myproject/settings.py ফাইলে INSTALLED_APPS লিস্টে 'rest_framework' যোগ করুন।
INSTALLED_APPS = [
# অন্যান্য অ্যাপস
'rest_framework',
'myapp', # আপনার অ্যাপ
]
- এখন একটি সিম্পল API তৈরি করুন:
myapp/views.py ফাইলে নিচের কোড যোগ করুন:
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status
class HelloWorld(APIView):
def get(self, request):
return Response({"message": "Hello, World!"}, status=status.HTTP_200_OK)
def post(self, request):
data = request.data
return Response({"received_data": data}, status=status.HTTP_201_CREATED)
- রাউটিং সেট করা:
myapp/urls.py ফাইলে কোড যোগ করুন:
from django.urls import path
from .views import HelloWorld
urlpatterns = [
path('', HelloWorld.as_view(), name='hello_world'),
]
এবং myproject/urls.py ফাইলে এই myapp.urls যোগ করুন:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('api/', include('myapp.urls')),
]
- Migrations এবং সার্ভার চালানো:
python manage.py makemigrations
python manage.py migrate
python manage.py runserver
- API টেস্টিং:
- GET রিকোয়েস্ট:
http://127.0.0.1:8000/api/এ গিয়ে{"message": "Hello, World!"}রেসপন্স দেখতে পাবেন। - POST রিকোয়েস্ট: Postman বা CURL ব্যবহার করে JSON ডেটা পাঠাতে পারেন, যেমন:
{
"name": "Django API"
}
এটি রেসপন্স হিসেবে {"received_data": {"name": "Django API"}} ফেরত দেবে।
সারাংশ
Flask এবং Django উভয়ই জনপ্রিয় Python ফ্রেমওয়ার্ক, যা দিয়ে সহজেই RESTful API তৈরি করা যায়।
- Flask হল একটি মাইক্রোফ্রেমওয়ার্ক, যা ছোট প্রোজেক্ট এবং API-এর জন্য উপযুক্ত। এটি ফ্লেক্সিবল এবং কাস্টমাইজেবল।
- Django একটি পূর্ণাঙ্গ ফ্রেমওয়ার্ক, যা বড় এবং জটিল প্রোজেক্টের জন্য বেশি উপযুক্ত। এটি ডেটাবেস, ইউজার অথেনটিকেশন, অ্যাডমিন প্যানেল ইত্যাদি নিয়ে আসে।
আপনি যে কোন একটি ফ্রেমওয়ার্ক ব্যবহার করে API তৈরি করতে পারেন, যেটি আপনার প্রোজেক্টের চাহিদা অনুযায়ী উপযুক্ত।