VBScript এ HTTP রিকোয়েস্ট পাঠাতে এবং রেসপন্স গ্রহণ করতে সাধারণত XMLHttpRequest অথবা MSXML2.XMLHTTP অবজেক্ট ব্যবহার করা হয়। এটি আপনাকে ওয়েব সার্ভারগুলির সাথে যোগাযোগ করতে, ডেটা পাঠাতে এবং রেসপন্স গ্রহণ করতে সাহায্য করে, যা AJAX কলের মতো ওয়েব অ্যাপ্লিকেশনে ব্যবহৃত হয়। এই স্ক্রিপ্টটি ক্লায়েন্ট সাইড থেকে ডাটা সার্ভারে পাঠাতে এবং সার্ভার থেকে ডেটা রিসিভ করতে ব্যবহার করা হয়।
XMLHttpRequest অবজেক্ট ব্যবহার
XMLHttpRequest অবজেক্টটি মূলত ওয়েব ব্রাউজারে ব্যবহৃত হলেও, VBScript এ এটি কমপ্লেক্স HTTP রিকোয়েস্ট পাঠানোর জন্য ব্যবহৃত হতে পারে। এর মাধ্যমে আপনি GET, POST, PUT, DELETE ইত্যাদি HTTP মেথড ব্যবহার করে রিকোয়েস্ট পাঠাতে পারেন।
সিনট্যাক্স:
Set http = CreateObject("MSXML2.XMLHTTP")
http.Open "GET", "https://example.com/api/data", False
http.Send
responseText = http.responseText
MsgBox responseText
HTTP GET রিকোয়েস্ট পাঠানো
GET রিকোয়েস্টটি সাধারণত ডেটা প্রাপ্তির জন্য ব্যবহৃত হয়। এর মাধ্যমে আপনি সার্ভার থেকে ডেটা রিট্রিভ করতে পারেন। নিচে একটি GET রিকোয়েস্টের উদাহরণ দেওয়া হল:
Dim http, url, responseText
Set http = CreateObject("MSXML2.XMLHTTP")
' GET রিকোয়েস্ট পাঠানো
url = "https://api.exaple.com/data"
http.Open "GET", url, False
http.Send
' রেসপন্সের টেক্সট গ্রহণ
responseText = http.responseText
' রেসপন্স দেখানো
MsgBox "Response: " & responseText
এখানে, GET মেথডটি "https://api.example.com/data" URL এ পাঠানো হয়েছে এবং সার্ভার থেকে প্রাপ্ত ডেটা responseText ভেরিয়েবলে সংরক্ষণ করা হয়েছে। তারপর MsgBox ব্যবহার করে রেসপন্স প্রদর্শিত হবে।
HTTP POST রিকোয়েস্ট পাঠানো
POST রিকোয়েস্টটি সাধারণত ডেটা সার্ভারে পাঠানোর জন্য ব্যবহৃত হয়। নিচে একটি POST রিকোয়েস্ট পাঠানোর উদাহরণ দেওয়া হল:
Dim http, url, data, responseText
Set http = CreateObject("MSXML2.XMLHTTP")
' POST রিকোয়েস্ট পাঠানো
url = "https://api.example.com/data"
data = "param1=value1¶m2=value2"
http.Open "POST", url, False
http.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
http.Send data
' রেসপন্সের টেক্সট গ্রহণ
responseText = http.responseText
' রেসপন্স দেখানো
MsgBox "Response: " & responseText
এখানে, POST মেথডটি "https://api.example.com/data" URL এ পাঠানো হয়েছে এবং data প্যারামিটারগুলো সার্ভারে পাঠানো হয়েছে। SetRequestHeader দিয়ে Content-Type হেডার সেট করা হয়েছে, যা নির্দেশ করে যে ডেটাটি application/x-www-form-urlencoded ফরম্যাটে পাঠানো হচ্ছে। এরপর, রেসপন্স গ্রহণ করা হয়েছে এবং MsgBox দিয়ে তা প্রদর্শন করা হয়েছে।
HTTP রিকোয়েস্টের রেসপন্স হ্যান্ডলিং
HTTP রিকোয়েস্ট পাঠানোর পর, responseText, responseXML, এবং status প্রপার্টি ব্যবহার করে রেসপন্স হ্যান্ডল করা যায়। এখানে, কিছু সাধারণ রেসপন্স প্রপার্টি এবং তাদের ব্যবহারের উদাহরণ:
- responseText: সার্ভার থেকে পাওয়া টেক্সট রেসপন্স।
- responseXML: সার্ভার থেকে পাওয়া XML রেসপন্স।
- status: HTTP স্ট্যাটাস কোড (যেমন 200, 404)।
- statusText: স্ট্যাটাস কোডের সাথে সম্পর্কিত স্ট্যাটাস বার্তা।
উদাহরণ:
Dim http, url, responseText, status, statusText
Set http = CreateObject("MSXML2.XMLHTTP")
' GET রিকোয়েস্ট পাঠানো
url = "https://api.example.com/data"
http.Open "GET", url, False
http.Send
' HTTP স্ট্যাটাস চেক করা
status = http.status
statusText = http.statusText
' রেসপন্স এবং স্ট্যাটাস দেখানো
If status = 200 Then
responseText = http.responseText
MsgBox "Response: " & responseText
Else
MsgBox "Error: " & status & " " & statusText
End If
এখানে, প্রথমে স্ট্যাটাস কোড চেক করা হয়েছে। যদি স্ট্যাটাস কোড 200 (অর্থাৎ সফল রিকোয়েস্ট) হয়, তবে রেসপন্স টেক্সটটি দেখানো হবে। অন্যথায়, একটি ত্রুটি বার্তা দেখানো হবে।
সারাংশ
VBScript এ HTTP রিকোয়েস্ট পাঠানোর জন্য MSXML2.XMLHTTP অবজেক্ট ব্যবহার করা হয়। এর মাধ্যমে GET এবং POST রিকোয়েস্ট পাঠানো যায় এবং সার্ভার থেকে রেসপন্স গ্রহণ করা যায়। responseText, responseXML, status, এবং statusText প্রপার্টি ব্যবহার করে রেসপন্স হ্যান্ডল করা হয়। এটি ওয়েব সার্ভিসের সাথে যোগাযোগ করার জন্য একটি গুরুত্বপূর্ণ টুল।
Read more