রেস্ট এপিআই টেস্ট করার জন্য পোস্টম্যান

ফ্রন্টেন্ড, মোবাইল অথবা ব্যাকেন্ড ডেভেলপার, সবারই REST API টেস্ট করার দরকার হয়। এপিআই রেসপন্স ঠিক মত আসে কিনা, তা এপিআই কল করে দেখলে ডেভেলপমেন্ট সহজ হয়। এপিআই টেস্ট করার জন্য অনেক গুলো টুল রয়েছে। যেমন Postman, Insomnia, SoapUI, Swagger ইত্যাদি। এছাড়া ব্রাউজার এক্সটেনশন ও রয়েছে যেমন Talend API Tester। আলাদা অ্যাপ ব্যবহার না করে ব্রাউজার এক্সটেনশন ব্যবহার করে REST API টেস্ট করা যায়। আমি উদাহরণ হিসেবে পোস্টম্যান ব্যবহার করব। সব গুলোতেই মোটামুটি সিমিলার কাজ করা যায়। API তে প্রধান কাজও মাত্র চারটা। GET, POST, UPDATE, DELETE। কমপ্লেক্স কিছু না।

পোস্টম্যান ডাউনলোড এবং ইন্সটল

প্রথমে পোস্টম্যান ডাউনলোড এবং ইন্সটল করে নিব। প্রথমবার ব্যবহার করতে গেলে লগিন করতে বলবে। লগিন করা শেষে আমরা ব্যবহার করতে পারব।

GET রিকোয়েস্ট

পোস্টম্যানে অনেক ফিচার রয়েছে। এই জন্য কিছুটা কমপ্লিকেটেড মনে হবে শুরুতে। সিম্পল গেট রিকোয়েস্ট করার জন্য ফাইল মেন্যু থেকে New তে ক্লিক করব। এরপর HTTP রিকোয়েস্ট সিলেক্ট করব।

তাহলে নিচের মত অপশন পাবোঃ

এড্রেসবারে এপিআই এন্ডপয়েন্ট (URL) লিখব। রিকোয়েস্ট টাইপ হিসেবে GET সিলেক্ট করব। তারপর Send বাটনে ক্লিক করলে রেজাল্ট দেখাবে। টেস্ট করার জন্য https://jsonplaceholder.typicode.com ব্যবহার করতে পারেন। যেমন GET রিকোয়েস্ট করে কিছু ডামি পোস্ট পাওয়ার জন্য https://jsonplaceholder.typicode.com/posts URL ব্যবহার কতে পারেন।

POST রিকোয়েস্ট

পোস্ট রিকোয়েস্ট একটু কমপ্লিকেটেড। এখানে প্রথমে রিকোয়েস্ট টাইপ হিসেবে POST সিলেক্ট করতে হবে।

এরপর Headers ট্যাব থেকে Accept কী যোগ করতে হবে, যার ভ্যালু হবে appication/json।

এরপর Send বাটনে ক্লিক করলে পোস্ট রিকোয়েস্ট হবে।

পোস্ট রিকোয়েস্ট যদি কোন ডেটা পাস করা লাগে, তা পাস করতে হয় body ট্যাব থেকে। আর যা পাস করতে হয় JSON ফরমেটে। তার জন্য

  • Bodyট্যাব সিলেক্ট করতে হবে প্রথমে।
  • এরপর ভ্যালু টাইপ হিসেবে raw সিলেক্ট করতে হবে।
  • এরপর ভ্যালু এর JSON ফরমেটে পাস করতে হবে।
  • ফাইনালি Send বাটনে ক্লিক করতে হবে।

যেমন কোন API এন্ডপয়েন্ট যদি পোস্ট রিকোয়েস্টে name ভ্যালু ইনপুট নেয়, তাহলে তা বডি ট্যাবে গিয়ে এভাবে লিখতে হবেঃ

{
    "name" : "Ali"
}

এরপর রেসপন্স দিবে। যদি POST রিকোয়েস্ট যে ডেটা আশা করে, তা ঠিক মত ইনপুট না দেই, তাহলে এরর দেখাবে।

একই ভাবে আপডেটের জন্য PUT এবং ডিলিটের জন্য DELETE রিকোয়েস্ট করতে পারি।

রিকোয়েস্ট কোড জেনারেট

পোস্টম্যানের একটা সুন্দর সুবিধা হচ্ছে নির্দিষ্ট রিকোয়েস্টের নির্দিষ্ট রেসপন্সের কোড কিভাবে লিখতে হয়, তা সুন্দর করে জেনারেট করে দেয়। তার জন্য ডান পাশের code আইকনে ক্লিক করব।

এরপর কোন প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহার করে এই API রিকোয়েস্ট করব, তা সিলেক্ট করলে কোড জেনারেট করে দিবেঃ

এই ফিচারটা জোস 😀

পোস্টম্যানে ওয়ার্কপ্লেস এবং কালেকশন

পোস্টম্যানে কালেকশন তৈরি করে সেখানে API এন্ডপয়েন্ট গুলো সেভ করে রাখা যায়। একটা কালেকশনে বিভিন্ন ভ্যারিয়েবল সেট করা যায়। base_url নামে যদি আমরা একটা ভ্যারিয়েবল সেট করি, এরপর {{base_url}} দিয়ে ঐ ভ্যারিয়েবল আমরা এড্রেসবারে ব্যবহার করতে পারব। {{baseUrl}}/products ব্যবহার করলে example.com/products রুটে কল হবে।

আরেকটা সুবিধা হচ্ছে এই কালেকশন গুলো আমাদের একাউন্টে সিঙ্ক্রোনাইজ থাকবে। ফলে যে কোন ডিভাইস থেকে এক্সেস করা যাবে।

Leave a Reply