Java Technologies REST API তে JSON এর ব্যবহার গাইড ও নোট

304

REST (Representational State Transfer) একটি আর্কিটেকচারাল স্টাইল যা ওয়েব সার্ভিস ডিজাইন করার জন্য ব্যবহৃত হয়। RESTful API (Application Programming Interface) একটি প্রোটোকল যা HTTP ব্যবহার করে ক্লায়েন্ট এবং সার্ভারের মধ্যে ডেটা এক্সচেঞ্জ করতে সাহায্য করে। JSON (JavaScript Object Notation) হল একটি লাইটওয়েট ডেটা ফরম্যাট যা সাধারণত REST API তে ব্যবহৃত হয় ডেটা আদান-প্রদান করতে।

REST API তে JSON এর গুরুত্ব:

  1. স্ট্রাকচারড ডেটা: JSON একটি স্ট্রাকচারড ডেটা ফরম্যাট, যা ডেটার বিভিন্ন অংশকে কীগুলোর মাধ্যমে শনাক্ত করা যায়। এটি একটি সাধারণ, পাঠযোগ্য এবং মেশিন-টূ-মেশিন উপযোগী ফরম্যাট।
  2. নিরাপত্তা: JSON ডেটা সাধারণত সিক্রেট কী বা টোকেন সহ প্রেরণ করা হয়, যা সার্ভার ও ক্লায়েন্টের মধ্যে নিরাপদ যোগাযোগ নিশ্চিত করে।
  3. ব্যবহার সহজ: JSON প্রাসঙ্গিক এবং মানুষের জন্য পাঠযোগ্য হওয়ায় ডেভেলপাররা খুব সহজে এটি ব্যবহার করতে পারেন।

REST API তে JSON ব্যবহার করার উদাহরণ


REST API তে JSON ব্যবহার করার জন্য সাধারণত HTTP পদ্ধতিগুলি (GET, POST, PUT, DELETE) ব্যবহার করা হয় এবং JSON ডেটা হিসেবে ডেটা আদান-প্রদান করা হয়। নিচে একটি সাধারণ উদাহরণ দেওয়া হলো যেখানে REST API তে JSON ফরম্যাটে ডেটা পাঠানো এবং গ্রহণ করা হয়।

1. GET রিকোয়েস্ট: JSON ডেটা পেতে

GET রিকোয়েস্ট সাধারণত সার্ভার থেকে ডেটা এক্সট্র্যাক্ট করার জন্য ব্যবহৃত হয়। এখানে JSON ফরম্যাটে ডেটা ফেরত আসে।

ক্লায়েন্ট সাইড (JavaScript):

fetch('https://api.example.com/users')
  .then(response => response.json()) // JSON ডেটা পার্স করা
  .then(data => console.log(data))    // JSON ডেটা লগ করা
  .catch(error => console.error('Error:', error));

এখানে, fetch ফাংশন ব্যবহার করে ক্লায়েন্ট সার্ভার থেকে GET রিকোয়েস্ট পাঠাচ্ছে এবং JSON ডেটা রেসপন্স হিসেবে পাচ্ছে।

সার্ভার সাইড (Node.js উদাহরণ):

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

// GET রিকোয়েস্ট হ্যান্ডলার
app.get('/users', (req, res) => {
  const users = [
    { id: 1, name: 'John Doe' },
    { id: 2, name: 'Jane Smith' }
  ];
  
  // JSON ফরম্যাটে রেসপন্স পাঠানো
  res.json(users);
});

app.listen(3000, () => {
  console.log('Server running on port 3000');
});

এখানে, সার্ভার একটি JSON Array রেসপন্স পাঠাচ্ছে, যা ক্লায়েন্ট সাইডে প্রক্রিয়া করা হচ্ছে।


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

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

ক্লায়েন্ট সাইড (JavaScript):

const user = {
  name: 'John Doe',
  age: 30,
  city: 'New York'
};

fetch('https://api.example.com/users', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json' // JSON ডেটার টাইপ নির্ধারণ
  },
  body: JSON.stringify(user) // JSON ডেটা পাঠানো
})
  .then(response => response.json()) // রেসপন্স JSON ফরম্যাটে পাওয়া
  .then(data => console.log('Success:', data))
  .catch(error => console.error('Error:', error));

এখানে, JSON.stringify() ব্যবহার করে JavaScript অবজেক্টটিকে JSON স্ট্রিং এ রূপান্তরিত করা হয়েছে এবং সেটি POST রিকোয়েস্টের মাধ্যমে সার্ভারে পাঠানো হয়েছে।

সার্ভার সাইড (Node.js উদাহরণ):

app.post('/users', express.json(), (req, res) => {
  const newUser = req.body; // পাঠানো JSON ডেটা
  console.log(newUser);
  
  // ডেটা গ্রহণের পর একটি রেসপন্স পাঠানো
  res.status(201).json({ message: 'User created successfully', data: newUser });
});

এখানে, সার্ভার POST রিকোয়েস্টের মাধ্যমে আসা JSON ডেটা গ্রহণ করছে এবং একটি সাফল্যের বার্তা সহ রেসপন্স পাঠাচ্ছে।


3. PUT রিকোয়েস্ট: JSON ডেটা আপডেট করা

PUT রিকোয়েস্ট ব্যবহৃত হয় কোনও অবজেক্টের সম্পূর্ণ ডেটা আপডেট করার জন্য।

ক্লায়েন্ট সাইড (JavaScript):

const updatedUser = {
  name: 'John Doe',
  age: 31,
  city: 'Los Angeles'
};

fetch('https://api.example.com/users/1', {
  method: 'PUT',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(updatedUser)
})
  .then(response => response.json())
  .then(data => console.log('User updated:', data))
  .catch(error => console.error('Error:', error));

সার্ভার সাইড (Node.js উদাহরণ):

app.put('/users/:id', express.json(), (req, res) => {
  const userId = req.params.id;
  const updatedData = req.body; // পাঠানো JSON ডেটা
  console.log(`Updating user ${userId} with data:`, updatedData);

  // আপডেট ডেটা পাঠানো
  res.json({ message: `User ${userId} updated successfully`, data: updatedData });
});

এখানে, PUT রিকোয়েস্টের মাধ্যমে সার্ভারে JSON ডেটা আপডেট করা হচ্ছে।


4. DELETE রিকোয়েস্ট: JSON ডেটা মুছে ফেলা

DELETE রিকোয়েস্ট ব্যবহার করে সার্ভারে থেকে কোনও ডেটা মুছে ফেলা হয়। যদিও সাধারণত এতে JSON রেসপন্স ফেরত আসার প্রয়োজন পড়ে না, তবে সার্ভার মুছে ফেলা ডেটার সম্পর্কিত একটি বার্তা পাঠাতে পারে।

ক্লায়েন্ট সাইড (JavaScript):

fetch('https://api.example.com/users/1', {
  method: 'DELETE'
})
  .then(response => response.json())
  .then(data => console.log('User deleted:', data))
  .catch(error => console.error('Error:', error));

সার্ভার সাইড (Node.js উদাহরণ):

app.delete('/users/:id', (req, res) => {
  const userId = req.params.id;
  console.log(`Deleting user with ID: ${userId}`);

  // ডেটা মুছে ফেলার পর একটি রেসপন্স পাঠানো
  res.json({ message: `User ${userId} deleted successfully` });
});

সারাংশ


JSON হল REST API তে ডেটা আদান-প্রদান করার জন্য অত্যন্ত জনপ্রিয় ফরম্যাট। এটি সার্ভার এবং ক্লায়েন্টের মধ্যে তথ্য আদান-প্রদান সহজ করে তোলে, বিশেষ করে ওয়েব অ্যাপ্লিকেশন এবং মোবাইল অ্যাপ্লিকেশনগুলিতে। GET, POST, PUT, এবং DELETE HTTP পদ্ধতিগুলি ব্যবহার করে JSON ডেটা সার্ভারে পাঠানো এবং গ্রহণ করা হয়, যা REST API-এর কার্যকারিতা এবং ইন্টারঅপারেবিলিটি নিশ্চিত করে। JSON ডেটা JavaScript সহ অনেক প্রোগ্রামিং ভাষায় ব্যবহারযোগ্য এবং সহজে পাঠযোগ্য, যা REST API এর জন্য একটি আদর্শ ডেটা ফরম্যাট।

Content added By
Promotion

Are you sure to start over?

Loading...