GET এবং POST ডেটা রিকোয়েস্ট প্রক্রিয়াকরণ

URL Parameters এবং Query Strings - এক্সপ্রেসজেএস (ExpressJS) - Web Development

228

ExpressJS এর মাধ্যমে আপনি বিভিন্ন HTTP রিকোয়েস্ট যেমন GET এবং POST রিকোয়েস্ট প্রক্রিয়া করতে পারেন। GET রিকোয়েস্ট সাধারণত ইউআরএল থেকে ডেটা নিয়ে আসে, এবং POST রিকোয়েস্টের মাধ্যমে ইউজার বা ক্লায়েন্ট সার্ভারে ডেটা পাঠায়। ExpressJS এ এই রিকোয়েস্ট প্রক্রিয়া করতে বেশ কিছু সহজ উপায় রয়েছে।


GET রিকোয়েস্ট

GET রিকোয়েস্ট সাধারণত ব্রাউজারে ইউআরএল টাইপ করার মাধ্যমে অথবা কোনো লিঙ্ক ক্লিক করার মাধ্যমে হয়। এই রিকোয়েস্টে ডেটা সাধারণত ইউআরএলের প্যারামিটার হিসেবে পাঠানো হয়।

১. GET রিকোয়েস্ট প্রক্রিয়া করা

ExpressJS-এ GET রিকোয়েস্ট প্রক্রিয়া করার জন্য app.get() ফাংশন ব্যবহার করা হয়। নিচে একটি উদাহরণ দেওয়া হলো:

const express = require('express');
const app = express();
const port = 3000;

// GET রিকোয়েস্ট হ্যান্ডলার
app.get('/', (req, res) => {
  res.send('Hello, this is a GET request!');
});

app.listen(port, () => {
  console.log(`Server running at http://localhost:${port}`);
});

এখানে:

  • / পাথের জন্য একটি GET রিকোয়েস্ট হ্যান্ডলার সেট করা হয়েছে।
  • রিকোয়েস্ট আসলে এটি Hello, this is a GET request! পাঠাবে।

২. URL প্যারামিটার দিয়ে GET রিকোয়েস্ট

GET রিকোয়েস্টে আপনি ইউআরএলের মধ্যে ডেটা প্যারামিটার হিসেবে পাঠাতে পারেন। উদাহরণস্বরূপ:

app.get('/user/:id', (req, res) => {
  const userId = req.params.id;
  res.send(`User ID is: ${userId}`);
});

এখানে:

  • /user/:id রাউটে :id একটি প্যারামিটার যা ইউআরএল থেকে ডাইনামিকভাবে গ্রহণ করা হয়। যেমন, /user/123 রিকোয়েস্টে userId = 123 হবে।

৩. GET রিকোয়েস্টে Query Parameters

GET রিকোয়েস্টে আপনি URL-এ query parameters পাঠাতে পারেন, যা req.query দ্বারা এক্সেস করা হয়।

app.get('/search', (req, res) => {
  const query = req.query.q;  // ?q=express
  res.send(`Search results for: ${query}`);
});

এখানে:

  • /search?q=express এ গেলে q প্যারামিটার গ্রহণ করা হবে এবং "Search results for: express" রেসপন্স পাঠানো হবে।

POST রিকোয়েস্ট

POST রিকোয়েস্ট সাধারণত ক্লায়েন্ট থেকে সার্ভারে ডেটা পাঠানোর জন্য ব্যবহৃত হয়, যেমন ফর্ম সাবমিট করা বা JSON ডেটা পাঠানো। POST রিকোয়েস্টে ডেটা সাধারণত রিকোয়েস্ট বডিতে পাঠানো হয়।

১. POST রিকোয়েস্ট প্রক্রিয়া করা

ExpressJS-এ POST রিকোয়েস্ট প্রক্রিয়া করতে app.post() ফাংশন ব্যবহার করা হয়। উদাহরণস্বরূপ:

app.post('/submit', (req, res) => {
  res.send('POST request received!');
});

এখানে:

  • /submit পাথের জন্য POST রিকোয়েস্ট হ্যান্ডলার সেট করা হয়েছে।

২. POST রিকোয়েস্টে JSON ডেটা পাঠানো

আপনি POST রিকোয়েস্টে JSON ডেটা পাঠাতে পারেন, এবং ExpressJS-এ JSON ডেটা প্রক্রিয়া করার জন্য express.json() middleware ব্যবহার করা হয়। উদাহরণস্বরূপ:

app.use(express.json());  // JSON ডেটা পার্স করার জন্য middleware

app.post('/user', (req, res) => {
  const user = req.body;  // POST ডেটা গ্রহণ
  res.send(`User created with name: ${user.name}`);
});

এখানে:

  • express.json() middleware রিকোয়েস্টের বডি থেকে JSON ডেটা পার্স করে।
  • req.body এর মাধ্যমে সেই ডেটা অ্যাক্সেস করা যায়। উদাহরণস্বরূপ, যদি { "name": "John Doe" } ডেটা POST করা হয়, তাহলে "User created with name: John Doe" রেসপন্স দেওয়া হবে।

৩. POST রিকোয়েস্টে URL Encoded ডেটা পাঠানো

অন্য একটি সাধারণ পদ্ধতি হল URL-encoded ডেটা পাঠানো, যা HTML ফর্মের মাধ্যমে প্রেরিত হয়। ExpressJS-এ এই ধরনের ডেটা প্রক্রিয়া করার জন্য express.urlencoded() middleware ব্যবহার করা হয়।

app.use(express.urlencoded({ extended: true }));  // URL-encoded ডেটা পার্স করার জন্য middleware

app.post('/form', (req, res) => {
  const name = req.body.name;  // ফর্ম ডেটা গ্রহণ
  res.send(`Form submitted with name: ${name}`);
});

এখানে:

  • ফর্মে name ইনপুট করা হলে, এটি req.body.name এর মাধ্যমে এক্সেস করা যাবে।
  • URL-encoded ডেটা POST করলে, যেমন: name=John Doe, তা req.body এ প্রাপ্ত হবে।

GET এবং POST রিকোয়েস্টের মধ্যে পার্থক্য

বৈশিষ্ট্যGET রিকোয়েস্টPOST রিকোয়েস্ট
উদ্দেশ্যসার্ভার থেকে ডেটা আনাসার্ভারে ডেটা পাঠানো
ডেটার অবস্থানইউআরএল প্যারামিটার বা Query Stringরিকোয়েস্ট বডি
নিরাপত্তাকম, কারণ ডেটা ইউআরএলে থাকেবেশি, কারণ ডেটা রিকোয়েস্ট বডিতে থাকে
ক্যাশিংGET রিকোয়েস্ট সাধারণত ক্যাশ করা হয়POST রিকোয়েস্ট ক্যাশ করা হয় না
সুরক্ষাকম সুরক্ষিত (ডেটা URL-এ থাকে)বেশি সুরক্ষিত (ডেটা বডিতে থাকে)

সারাংশ

ExpressJS এ GET এবং POST রিকোয়েস্ট প্রক্রিয়া করার জন্য সহজ এবং শক্তিশালী উপায় সরবরাহ করে। GET রিকোয়েস্ট সাধারণত ইউআরএল থেকে ডেটা আনতে ব্যবহৃত হয়, যেখানে POST রিকোয়েস্ট ক্লায়েন্ট থেকে সার্ভারে ডেটা পাঠানোর জন্য ব্যবহৃত হয়। ExpressJS এর মাধ্যমে আপনি URL প্যারামিটার, query parameters, এবং বডি ডেটা সহজেই প্রক্রিয়া করতে পারেন, যা ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্টে অত্যন্ত কার্যকর।

Content added By
Promotion

Are you sure to start over?

Loading...