এটি আসলে খুব বিস্তৃত প্রশ্ন। অত্যন্ত প্রাথমিক অর্থে, একটি ওয়েব এপিআই কাজ করে যখন কোনও ক্লায়েন্ট (ওয়েব ব্রাউজারের মতো) কোনও ওয়েব সার্ভারে কোনও প্রকারের এইচটিটিপি অনুরোধ করে। ব্যবহারকারীর কী চায় তা নির্ধারণের জন্য সার্ভারটি অনুরোধটি পরীক্ষা করে এবং তারপরে ক্লায়েন্টটি যা চায় তার জন্য পরীক্ষা করে এমন কোনও ফর্ম্যাটে (কোনও পৃষ্ঠার মতো) ডেটা ফেরত দেয়। ওয়েব অ্যাপ্লিকেশনগুলিতে সাধারণ জিনিসগুলির মধ্যে এটি কেবলমাত্র; আমি বুঝতে পারি যে এটি সত্যই আপনার প্রশ্নের উত্তর দেয় না, তবে কেন আমি প্রশ্নটি এত বিস্তৃত তা একটি কারণ দিতে চেয়েছিলাম।
এমন কোনও ধরণের উপায় রয়েছে যে কোনও ক্লায়েন্ট তার অনুরোধটিকে ফর্ম্যাট করতে পারে, বা কোনও সার্ভার তার প্রতিক্রিয়াটি ফর্ম্যাট করতে পারে, এবং তাই এর কোনওটি বোঝার জন্য, ক্লায়েন্ট এবং সার্ভারকে কিছু বেসিক নিয়মে সম্মতি জানাতে হবে। সাধারণভাবে বলতে গেলে আজকাল দুটি খুব সাধারণ শৈলী রয়েছে যা এই ধরণের জিনিসটির জন্য ব্যবহৃত হয়।
রিমোট প্রক্রিয়া কল (আরপিসি)
কোনও আরপিসির স্টাইল এপিআইতে সাধারণত পুরো এপিআই এর জন্য কেবলমাত্র একটি URL থাকে। আপনি এটিকে কোনও ধরণের একটি দস্তাবেজ পোস্ট করে কল করেছেন যাতে আপনি কী করতে চান সে সম্পর্কিত তথ্য রয়েছে এবং সার্ভারটি আপনার যা চাইবে সেই দস্তাবেজ ফিরিয়ে দেয়। সাধারণ কম্পিউটিং পদগুলিতে, অনুরোধ নথিতে সাধারণত একটি ফাংশনের নাম এবং কিছু যুক্তি থাকে।
এই স্টাইলের API এর কিছু মানের মধ্যে XML-RPC এবং SOAP অন্তর্ভুক্ত। এই মানকগুলি এমন ফর্ম্যাট তৈরি করার চেষ্টা করে যা আপনার করা ফাংশন কলগুলি বর্ণনা করতে বা পুরো এপিআই বর্ণনা করার জন্য ব্যবহার করা যেতে পারে।
প্রিপ্রেসিটেশনাল স্টেট ট্রান্সফার (REST)
একটি রিস্ট স্টাইল এপিআইতে, আপনার কাছে নেম স্পেস হিসাবে API এর জন্য এতটা ইউআরএল নেই : একটি সার্ভার বা কোনও সার্ভারের অভ্যন্তরে একটি ফোল্ডার যেখানে অনেকগুলি পৃথক অবজেক্ট থাকে এবং এই নেমস্পেসের প্রতিটি URL অংশ হয়ে যায় এপিআই এর সার্ভার যা আপনি API- টি ব্যবহার করতে চান তা বলে বরং, URL- সার্ভার কি এপিআই ব্যবহার করতে চান বলে উপর । এর পরে আপনি HTTP- র পদ্ধতি, এবং সম্ভবত অনুরোধের মূল ব্যবহার কি আপনি কি করতে চান তা ব্যাখ্যা করার জন্য যে বস্তু: করুন, পোস্ট (নতুন কিছু তৈরি করুন), put (কিছু ইতিমধ্যে সেখানে যে প্রতিস্থাপন), (কিছু ইতিমধ্যে সেখানে যে পুনরুদ্ধার করে) বা মুছে ফেলুন (ইতিমধ্যে সেখানে থাকা কিছু থেকে মুক্তি পান)। আপনি ব্যবহার করতে পারেন এমন আরও কয়েকটি ক্রিয়া রয়েছে তবে সেগুলি এখন পর্যন্ত সবচেয়ে সাধারণ।
এখনও অবধি আমি রেস্টের জন্য স্ট্যান্ডার্ড ফর্ম্যাটগুলি উল্লেখ করিনি। তত্ত্বের ক্ষেত্রে, আপনি যে কোনও বিন্যাস সম্পর্কে প্রায়শই ব্যবহার করতে পারেন। আপনি কী করতে চান এবং আপনি এটিতে কী করতে চান তা এইচটিটিপি ইতিমধ্যে জানিয়েছে, তাই অনুরোধের বডিটির ফর্ম্যাটটি কেবল যে কোনও বিষয়ে হতে পারে: আপনি তৈরি করতে বা প্রতিস্থাপন করতে চান এমন কিছু বস্তুর প্রতিনিধিত্ব। তবে বাস্তবে, বিশ্রামের লেখক যেভাবেই কোনও ফর্ম্যাটে সম্মত হন, কারণ প্রতিটি সম্ভাব্য ফর্ম্যাটটি বোঝা মুশকিল।