আগের পর্বে আমরা শিখেছি কীভাবে POST API দিয়ে নতুন প্রোডাক্ট যোগ করতে হয়। আজ আমরা শিখবো কীভাবে কোনো প্রোডাক্ট ডিলিট করতে হয়—যখন কোনো প্রোডাক্ট বন্ধ হয়ে যায় বা ভুল করে যোগ করা হয়।
DELETE API কী?
ওয়েব অ্যাপ্লিকেশনে চারটি প্রধান HTTP মেথড আছে। আজ পর্যন্ত আমরা GET ও POST শিখেছি। আজ শিখব DELETE — যার কাজ কোনো ডেটা মুছে ফেলা।
| HTTP Method | কাজ | সহজ বাংলায় |
|---|---|---|
GET | ডেটা পড়া | "আমাকে তালিকা দাও" |
POST | নতুন ডেটা যোগ | "এই জিনিসটা যোগ করো" |
DELETE | ডেটা মুছে ফেলা | "এই জিনিসটা সরিয়ে দাও" |
DELETE API কীভাবে কাজ করে?
আমরা URL-এই একটি id পাঠাবো। যেমন /products/2—এর মানে হলো id 2-এর প্রোডাক্টটা ডিলিট করতে চাই। সার্ভার সেই id-র প্রোডাক্ট খুঁজে বের করবে এবং মুছে ফেলবে। এটাকে বলে URL প্যারামিটার।
| URL | মানে |
|---|---|
DELETE /products/1 | id 1-এর প্রোডাক্ট ডিলিট করো |
DELETE /products/5 | id 5-এর প্রোডাক্ট ডিলিট করো |
DELETE /products/999 | id 999 নেই → এরর দেবে |
ধাপ ১: server.js ওপেন করো
cd ~/shop-api
micro server.js
ধাপ ২: DELETE রাউট যোগ করো
app.post('/products', ...) রাউটের নিচে এই নতুন কোডটি যোগ করো:
app.delete('/products/:id', (req, res) => {
let products = readProducts();
const id = parseInt(req.params.id);
const filteredProducts = products.filter(p => p.id !== id);
if (filteredProducts.length === products.length) {
return res.status(404).json({ message: 'এই id-র কোনো প্রোডাক্ট পাওয়া যায়নি' });
}
writeProducts(filteredProducts);
res.json({ message: `প্রোডাক্ট id ${id} ডিলিট হয়েছে` });
});
লাইন-বাই-লাইন ব্যাখ্যা
| লাইন | কী করছে? | সহজ ভাষায় |
|---|---|---|
req.params.id | URL থেকে id পড়ছে | "তুমি কোন প্রোডাক্ট চাও?" |
parseInt() | স্ট্রিং → সংখ্যা | "নম্বরটা ঠিক করো" |
filter() | যাদের id মিলবে না, তাদের রাখছে | "যেটা চেয়েছো সেটা বাদ দাও" |
length === products.length | চেক করছে কিছু বদলেছে কিনা | "তোমারটা পেলাম না" |
res.status(404) | না পেলে 404 পাঠাচ্ছে | "এই জিনিস দোকানে নেই" |
ধাপ ৩: সার্ভার রিস্টার্ট করো
# Ctrl+C দিয়ে বন্ধ করো, তারপর:
node server.js
ধাপ ৪: curl দিয়ে টেস্ট করো
# id 2 ডিলিট করো
curl -X DELETE http://localhost:3000/products/2
# চেক করো
curl http://localhost:3000/products
ভুল টেস্ট করো
এমন একটা id দিই যা নেই:
curl -X DELETE http://localhost:3000/products/999
উত্তর: {"message":"এই id-র কোনো প্রোডাক্ট পাওয়া যায়নি"} — এটাই 404 Not Found! তোমার API এখন যথেষ্ট বুদ্ধিমান।
আজ তুমি কী শিখলে
- DELETE — ডেটা মুছে ফেলা
- req.params.id — URL থেকে প্যারামিটার পড়া
- parseInt() — স্ট্রিং → সংখ্যা
- filter() — নির্দিষ্ট শর্তে অ্যারে ফিল্টার
- 404 Not Found — রিসোর্স না পাওয়ার স্ট্যাটাস
- curl -X DELETE — টার্মিনাল দিয়ে DELETE টেস্ট
পরবর্তী পর্বে আমরা শিখবো PUT API — কীভাবে প্রোডাক্ট আপডেট করতে হয়।
In the previous episode, we learned how to add new products using POST API. Today we'll learn how to delete a product—when a product is discontinued or added by mistake.
What is DELETE API?
| HTTP Method | Action | Simple Meaning |
|---|---|---|
GET | Read data | "Give me the list" |
POST | Create new data | "Add this new item" |
DELETE | Remove data | "Remove this item" |
How DELETE API works
We send an id in the URL. For example, /products/2 means we want to delete the product with id 2. The server finds that product and removes it.
Step 1: Open server.js
cd ~/shop-api
micro server.js
Step 2: Add DELETE route
app.delete('/products/:id', (req, res) => {
let products = readProducts();
const id = parseInt(req.params.id);
const filteredProducts = products.filter(p => p.id !== id);
if (filteredProducts.length === products.length) {
return res.status(404).json({ message: 'Product not found' });
}
writeProducts(filteredProducts);
res.json({ message: `Product id ${id} deleted` });
});
Step 3: Restart server
# Ctrl+C to stop, then:
node server.js
Step 4: Test with curl
# Delete id 2
curl -X DELETE http://localhost:3000/products/2
# Verify
curl http://localhost:3000/products
Test error case
curl -X DELETE http://localhost:3000/products/999
In the next episode, we'll learn PUT API — how to update products.
💬 মন্তব্য / Comments