Express.js দিয়ে RESTful API কীভাবে তৈরি হয়, সেটা এই ব্লগে বিস্তারিতভাবে ব্যাখ্যা করা হয়েছে। জানুন API কী, RESTful API-এর নিয়ম, Express.js দিয়ে GET, POST, PUT, DELETE কিভাবে কাজ করে – সবকিছু বাংলায় সহজ ভাষায়।

আজকের ওয়েব দুনিয়ায় API-এর গুরুত্ব
আজকের ওয়েব অ্যাপ্লিকেশন বা মোবাইল অ্যাপ যেটাই হোক না কেন, Backend থেকে ডেটা পাঠানোর বা নেয়ার জন্য সবচেয়ে জনপ্রিয় পদ্ধতি হচ্ছে API (Application Programming Interface)।
আর এই API যদি হয় RESTful, তাহলে সেটা আরও স্ট্যান্ডার্ড, স্কেলযোগ্য, এবং মেইনটেইন করা সহজ হয়।
Express.js কী?
Express.js হচ্ছে Node.js প্ল্যাটফর্মের উপর তৈরি একটি জনপ্রিয় minimal web framework। এই ফ্রেমওয়ার্ক ব্যবহার করে আপনি খুব সহজেই ওয়েব সার্ভার তৈরি করতে পারবেন এবং API বানাতে পারবেন।
সহজ উদাহরণ:
ভাবুন, আপনি একটি হোটেল খুলেছেন। হোটেলের ওয়েটার কাস্টমারদের অর্ডার নেয়, রান্নাঘরে পাঠায়, আবার খাবার পরিবেশন করে।
ঠিক তেমনই, Express.js হচ্ছে সেই “ওয়েটার” ব্রাউজার থেকে আসা Request নেয়, এবং তার উত্তরে Response দেয়। আপনি বলে দিলেন /users
URL-এ গেলে কি রেসপন্স দিতে হবে, Express সেটা অনুযায়ী হ্যান্ডেল করে।
API মানে কী?
API বা Application Programming Interface হলো এমন একটি মাধ্যম যার মাধ্যমে এক সফটওয়্যার সিস্টেম আরেকটির সঙ্গে যোগাযোগ করে।
ধরুন, আপনি একটি মোবাইল অ্যাপে “সব ইউজার” দেখতে চান। তখন অ্যাপটি এমন একটি API রিকোয়েস্ট পাঠায়:
GET /users
এই রিকোয়েস্ট সার্ভার গ্রহণ করে, প্রয়োজনীয় ডেটা ফেচ করে এবং JSON আকারে রেসপন্স পাঠায়:
[
{ "id": 1, "name": "Rahim" },
{ "id": 2, "name": "Karim" }
]
এভাবে ক্লায়েন্ট ও সার্ভার একে অপরের সাথে যোগাযোগ করে API এর মাধ্যমে।
RESTful API কী?
REST এর পূর্ণরূপ Representational State Transfer। RESTful API মানে এমন API যেটা কিছু নির্দিষ্ট নিয়ম মেনে চলে।
Complete web development with Programming Hero
-৪৩০০+ জব প্লেসমেন্ট
– ৩ বেলা ডেডিকেটেড লাইভ সাপোর্ট
-১০০% জব প্লেসমেন্ট সাপোর্ট
-৮৫ টি মডিউল, ১২+ মাইলস্টোন
-ডেডিকেটেড হেল্প ডেস্ক ২৪/৭
RESTful API-এর মূল নিয়মগুলো:
- HTTP verb ব্যবহার করতে হবে:
GET
,POST
,PUT
,DELETE
- Stateless Communication – প্রতিটি API call স্বতন্ত্র, আগের রিকোয়েস্টের কোনো context ধরে না
- Standard URL Pattern ব্যবহার
- JSON বা অন্য format-এ Data Transfer
HTTP Verb | কাজ |
---|---|
GET | ডেটা রিড করা |
POST | নতুন ডেটা তৈরি করা |
PUT | ডেটা আপডেট করা |
DELETE | ডেটা ডিলিট করা |
Express.js দিয়ে RESTful API তৈরি করা
চলুন এখন বাস্তব উদাহরণে দেখে ফেলি, কিভাবে Express.js দিয়ে RESTful API তৈরি করা যায়।
Server Setup:
const express = require('express');
const app = express();
const port = 5000;
app.use(express.json()); // JSON body parse করার জন্য
app.listen(port, () => {
console.log(`Server running on port ${port}`);
});
ডেমো ইউজার লিস্ট:
let users = [
{ id: 1, name: "Rahim" },
{ id: 2, name: "Karim" }
];
GET: সব ইউজার পাওয়া
app.get('/users', (req, res) => {
res.send(users);
});
POST: নতুন ইউজার তৈরি
app.post('/users', (req, res) => {
const newUser = req.body;
users.push(newUser);
res.send(newUser);
});
PUT: ইউজার আপডেট
app.put('/users/:id', (req, res) => {
const id = parseInt(req.params.id);
const updatedUser = req.body;
users = users.map(user => user.id === id ? updatedUser : user);
res.send(updatedUser);
});
DELETE: ইউজার ডিলিট
app.delete('/users/:id', (req, res) => {
const id = parseInt(req.params.id);
users = users.filter(user => user.id !== id);
res.send({ message: 'User deleted' });
});
কখন RESTful API এর নিয়ম ভাঙা হয়?
RESTful API-এর কিছু স্ট্যান্ডার্ড নিয়ম থাকলেও, সব সময় বাস্তবে তা পুরোপুরি ফলো করা যায় না। কিছু common কারণ:
Legacy System Integration
পুরানো সিস্টেমের সাথে কাজ করলে RESTful standard মানা মুশকিল হয়।
Performance Optimization
একাধিক কাজ একসাথে করার জন্য কাস্টম endpoint বানাতে হয়, যা pure RESTful নয়।
Convenience over Convention
POST দিয়েই GET/PUT/DELETE এর কাজ করিয়ে ফেলা হয় যেন ক্লায়েন্টে কোড কম লিখতে হয়।
MVP বা Rapid Development
দ্রুত কাজ শেষ করতে গিয়ে REST rule মানা কঠিন হয়ে পড়ে।
📌 যদিও এইসব ক্ষেত্রে নিয়ম ভাঙা হয়, তবুও RESTful guideline অনুসরণ করলেই ভবিষ্যতে কোড মেইনটেইন করা সহজ হয়।
RESTful API কেন জনপ্রিয়?
- প্রতিটি ডেটার জন্য আলাদা endpoint থাকে
- HTTP verb দিয়ে সহজেই কাজ বোঝা যায়
- Client-server structure আলাদা রাখা যায়
- Scalability সহজ হয়
- Framework support (Express, Django, Flask, Spring Boot) ভালো
MongoDB – RESTful API-এর পারফেক্ট পার্টনার
আমরা যদি এখন লোকাল অ্যারেতে না রেখে ডেটাগুলো কোনো ডাটাবেজে রাখতে চাই, তাহলে MongoDB ব্যবহার করা যেতে পারে।
MongoDB হলো NoSQL ডাটাবেজ, যা JSON-আধারিত ডেটা খুব সহজে সংরক্ষণ করে এবং Express.js-এর সঙ্গে চমৎকারভাবে কাজ করে।
Bonus Suggestion: RESTful API + Express.js + MongoDB নিয়ে আপনি একটা পুরো CRUD প্রজেক্ট বানাতে পারেন — যা আপনার portfolio-এর জন্য দারুণ একটা প্রজেক্ট হবে!
RESTful API ও Express.js: স্মরণীয় টিপস
সব সময় proper HTTP verb ব্যবহার করুন
Meaningful endpoint নাম দিন (যেমন /users
, /posts/:id
)
response হিসেবে res.status().json()
ব্যবহার করার অভ্যাস গড়ুন
সব রিকোয়েস্টে error handling রাখুন
ডেটাবেজ কানেকশন (যেমন MongoDB) যুক্ত করে fullstack development শিখুন
পরবর্তী শেখার লিঙ্ক (Internal Linking Ideas):
- [Node.js দিয়ে Server তৈরি করার ধাপ]
- [MongoDB দিয়ে CRUD অপারেশন শেখা]
- [Express Middleware কী এবং কিভাবে কাজ করে]
আজকের যুগে যেকোনো ওয়েব বা মোবাইল অ্যাপে ব্যাকএন্ডের সবচেয়ে বড় শক্তি হচ্ছে API। Express.js দিয়ে আপনি দ্রুত RESTful API তৈরি করতে পারবেন এবং সেটা ছোট প্রজেক্ট হোক বা বড় সবার জন্য কার্যকরী।
এই ব্লগে আপনি জানলেন Express.js, RESTful API, GET/POST/PUT/DELETE রিকোয়েস্ট, এবং কেন কখন REST এর নিয়ম ভাঙা হয়। এখন আপনি চাইলে MongoDB দিয়ে আরও একধাপ এগিয়ে যেতে পারেন।
Technology এর সকল আপডেট সবার আগে বিস্তারিত পেতে চেক করুন