XMLHttpRequest ব্যবহার করার ধাপসমূহ

AJAX ও JavaScript – The XMLHttpRequest Object

AJAX মানে হলো Asynchronous JavaScript and XML, যা ওয়েব পেজকে রিলোড না করেই সার্ভারের সাথে ডেটা এক্সচেঞ্জ করতে সাহায্য করে। AJAX এর পেছনে সবচেয়ে গুরুত্বপূর্ণ অবজেক্ট হলো XMLHttpRequest। এই অবজেক্ট ব্যবহার করে আমরা সার্ভারের সাথে ডেটা পাঠাতে বা আনতে পারি পেইজ রিলোড ছাড়াই।

XMLHttpRequest কী?

XMLHttpRequest একটি বিল্ট-ইন JavaScript অবজেক্ট যা ক্লায়েন্ট সাইড স্ক্রিপ্ট থেকে সার্ভারে HTTP রিকোয়েস্ট পাঠাতে এবং রেসপন্স নিতে ব্যবহৃত হয়। এটি GET এবং POST উভয় পদ্ধতি সাপোর্ট করে।

XMLHttpRequest ব্যবহার করার ধাপসমূহ:

Step Description
1 XMLHttpRequest অবজেক্ট তৈরি করুন
2 open() method দিয়ে সার্ভারের সাথে সংযোগ তৈরি করুন
3 send() method দিয়ে রিকোয়েস্ট পাঠান
4 readystatechange ইভেন্টের মাধ্যমে রেসপন্স হ্যান্ডেল করুন

একটি সিম্পল AJAX উদাহরণ:

HTML Code:

<button onclick=”loadData()”>ডেটা লোড করুন</button>
<div id=”output”></div>

JavaScript Code:


function loadData() {
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById(“output”).innerHTML = this.responseText;
}
};
xhttp.open(“GET”, “data.txt”, true);
xhttp.send();
}

কোডের ব্যাখ্যা:

  • XMLHttpRequest() দিয়ে একটি রিকোয়েস্ট অবজেক্ট তৈরি করা হয়।
  • onreadystatechange হল একটি ইভেন্ট হ্যান্ডলার যা সার্ভারের রেসপন্স আসলে কাজ করে।
  • readyState == 4 মানে রিকোয়েস্ট সম্পূর্ণ হয়েছে।
  • status == 200 মানে রিকোয়েস্ট সফল হয়েছে।
  • open() method দিয়ে GET মেথড এবং ফাইলের নাম দিয়ে সংযোগ তৈরি করা হয়।
  • send() method দিয়ে রিকোয়েস্ট পাঠানো হয়।

POST মেথডের ব্যবহার:

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


var xhttp = new XMLHttpRequest();
xhttp.open(“POST”, “submit.php”, true);
xhttp.setRequestHeader(“Content-type”, “application/x-www-form-urlencoded”);
xhttp.send(“name=Tamim&age=25”);

এখানে setRequestHeader() method ব্যবহার করে Content-Type নির্ধারণ করা হয়, এবং send() method এ ডেটা পাঠানো হয় সার্ভারে।

AJAX ব্যবহারে সুবিধাসমূহ:

  • ওয়েবপেজ রিলোড ছাড়া ডেটা আপডেট করা যায়।
  • ইউজার এক্সপেরিয়েন্স বাড়ায়।
  • সার্ভারের সাথে দ্রুত যোগাযোগ করা যায়।
  • কম ব্যান্ডউইথ খরচ হয়।

AJAX XMLHttpRequest দিয়ে JavaScript ব্যবহার করে ডাটা লোড করুন

AJAX (Asynchronous JavaScript and XML) একটি শক্তিশালী প্রযুক্তি যা ওয়েব পেজ রিফ্রেশ না করেই সার্ভার থেকে ডাটা লোড বা পাঠাতে সাহায্য করে। AJAX এর জন্য সবচেয়ে জনপ্রিয় জাভাস্ক্রিপ্ট অবজেক্ট হলো XMLHttpRequest। আজ আমরা শিখবো কিভাবে জাভাস্ক্রিপ্টের মাধ্যমে AJAX ব্যবহার করে ডাটা রিকুয়েস্ট ও রিসিভ করা যায়।

 

AJAX দিয়ে JSON ডেটা লোড করার উদাহরণ


// HTML Button
<button onclick="loadData()">Load User</button>

// JavaScript Function
function loadData() {
  var xhr = new XMLHttpRequest();
  xhr.open("GET", "data.json", true);
  xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
      var response = JSON.parse(xhr.responseText);
      document.getElementById("result").innerHTML =
        "<strong>Name:</strong> " + response.name + "<br>" +
        "<strong>Age:</strong> " + response.age;
    }
  };
  xhr.send();
}
    

উপরের কোড ব্যাখ্যা:

  • XMLHttpRequest() দিয়ে একটি অবজেক্ট তৈরি করেছি।
  • open() দিয়ে GET রিকুয়েস্ট করেছি data.json ফাইলের জন্য।
  • onreadystatechange দিয়ে চেক করেছি রিকুয়েস্ট সম্পূর্ণ হয়েছে কিনা।
  • JSON.parse() দিয়ে JSON ডাটা অবজেক্টে রূপান্তর করেছি।

AJAX দিয়ে সার্ভারে POST রিকুয়েস্ট পাঠানো


function sendData() {
  var xhr = new XMLHttpRequest();
  var data = "name=Arif&age=30";

  xhr.open("POST", "submit.php", true);
  xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

  xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
      alert("Data saved: " + xhr.responseText);
    }
  };
  xhr.send(data);
}
    

এই কোডে:

  • একটি POST রিকুয়েস্ট পাঠানো হয়েছে submit.php ফাইলে।
  • setRequestHeader() দিয়ে কনটেন্ট টাইপ সেট করা হয়েছে।
  • send() ফাংশনে ডাটা পাঠানো হয়েছে সার্ভারে।

AJAX + JavaScript এর সুবিধা

  • পেজ রিফ্রেশ ছাড়াই ডাটা লোড হয়।
  • ইউজার এক্সপেরিয়েন্স উন্নত হয়।
  • সার্ভার-সাইড প্রোগ্রামিং এর সাথে ইন্টিগ্রেশন করা যায়।

উপসংহার

AJAX ও XMLHttpRequest ব্যবহারে আপনি আপনার ওয়েব অ্যাপ্লিকেশনকে আরও গতিশীল, ইউজার ফ্রেন্ডলি এবং স্মার্ট করতে পারবেন। এটি প্রায় সব আধুনিক ওয়েব অ্যাপে ব্যবহৃত হয়।


 

Leave a Reply