1. Home
  2. Docs
  3. Rest Api
  4. Express.js রিকোয়েস্ট অবজেক্ট

Express.js রিকোয়েস্ট অবজেক্ট

Express.js রিকোয়েস্ট অবজেক্টে অনেকগুলি প্রপার্টি রয়েছে যা HTTP রিকোয়েস্টের বিভিন্ন দিককে প্রতিনিধিত্ব করে। এই প্রপার্টিগুলির মধ্যে রয়েছে:

  • method: রিকোয়েস্টের পদ্ধতি, যেমন “GET”, “POST”, “PUT”, বা “DELETE”।
  • url: রিকোয়েস্ট করা URL।
  • headers: রিকোয়েস্টের হেডার।
  • body: রিকোয়েস্টের বডি।
  • cookies: রিকোয়েস্টের কুকিজ।
  • query_string: রিকোয়েস্টের কুয়েরি স্ট্রিং।
  • protocol: রিকোয়েস্টের প্রোটোকল, যেমন “HTTP/1.1” বা “HTTPS”।
  • port: রিকোয়েস্ট করা পোর্ট।
  • remote_addr: রিকোয়েস্ট করা ডিভাইসের IP ঠিকানা।
  • user_agent: রিকোয়েস্ট করা ডিভাইসের ব্যবহারকারী এজেন্ট।

Express.js রিকোয়েস্ট অবজেক্টের প্রপার্টিগুলি অ্যাক্সেস করতে, আপনি অ্যাক্সেসর মেথড ব্যবহার করতে পারেন। উদাহরণস্বরূপ, method প্রপার্টি অ্যাক্সেস করতে, আপনি নিম্নলিখিত কোড ব্যবহার করতে পারেন:

রিকোয়েস্টের পদ্ধতি (method)

app.get('/', (req, res) => {
  console.log(`Request method: ${req.method}`);
});

এই কোডটি GET রিকোয়েস্টের জন্য Request method: GET প্রিন্ট করবে।

রিকোয়েস্ট করা URL (url)

app.get('/', (req, res) => {
  console.log(`Request URL: ${req.url}`);
});

// Output
'/'

রিকোয়েস্টের হেডার (headers)

const express = require("express");
require('dotenv').config();

const app = express();


app.get('/',(req,res)=>{
    const header = req.headers;
    console.log(header);
});


const port = process.env.PORT || 5000;
app.listen(port, () => {
  console.log(`SERVER STARTED with ${port}`);
});

Output

{
  host: '127.0.0.1:3000',
  connection: 'keep-alive',
  'cache-control': 'max-age=0',
  'sec-ch-ua': '"Google Chrome";v="119", "Chromium";v="119", "Not?A_Brand";v="24"',
  'sec-ch-ua-mobile': '?0',
  'sec-ch-ua-platform': '"Windows"',
  'upgrade-insecure-requests': '1',
  'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36',
  accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7',
  'sec-fetch-site': 'none',
  'sec-fetch-mode': 'navigate',
  'sec-fetch-user': '?1',
  'sec-fetch-dest': 'document',
  'accept-encoding': 'gzip, deflate, br',
  'accept-language': 'en-US,en;q=0.9,bn;q=0.8',
  cookie: '__stripe_mid=40be1979-0bac-48f6-8a33-a2650eee4f42ae89b2; csrftoken=ZEH0A8LhaTPkpPcJc62g9dSGQ0lRftYs; sessionid=x81swk1ht8m0mztwgmrjxk6zvvvcm5rp',
  'if-none-match': 'W/"27-MsagjWkfDZuSdnGFCFRQ/haiiJQ"'
}

রিকোয়েস্ট করা BODY(body)

Request Body (req.body): To access the request body, you need to use middleware like body-parser or express.json() (for JSON requests) to parse the request body. Here’s an example using express.json() to parse JSON request bodies:

const express = require('express');
const app = express();
app.use(express.json());

app.post('/example', (req, res) => {
  console.log('Request body:', req.body);
  // ...
});

Query Parameter হল রিকোয়েস্ট URL-এর শেষে যুক্ত করা অতিরিক্ত তথ্য। এই তথ্যটি ওয়েব সার্ভারকে রিকোয়েস্টটির উদ্দেশ্য সম্পর্কে আরও বেশি বুঝতে সাহায্য করে। উদাহরণস্বরূপ, কোনও অনুসন্ধান ইঞ্জিন থেকে কোনও ওয়েবসাইটে রিকোয়েস্ট পাঠানো হলে, রিকোয়েস্ট URL-এ অনুসন্ধান করা শব্দটি একটি query parameter হিসাবে পাঠানো হতে পারে।

রিকোয়েস্ট করা req.query

মনেকরি ইউজার নিচের মতো ইউআরএল এ রিকোয়েস্ট করলো

//এখানে ব্যবহারকারী প্যারামিটার হিসাবে name এবং roll এবং  ভ্যালু হিসাবে olee এবং 25  দিয়েছে 
http://localhost:3000/register?name=olee&roll=25

এবার আমরা কোয়েরি ব্যবহার করে প্যারামিটার থেকে ভ্যালু টি ধরি


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

app.get('/register', (req, res) => {
// Syntaxt req.query.paramitername
  const name = req.query.name;
  const roll = req.query.roll;

  res.send(`Your value is ${name} and ${roll}`);
});

// Start the server
app.listen(port, () => {
  console.log('Hello World');
});

How can we help?