REST API সার্ভিস টিউটোরিয়াল REST API উদাহরণ সহ

রেস্টফুল ওয়েব সার্ভিস কি?

আরামদায়ক ওয়েব পরিষেবা এটি একটি হালকা ওজনের, রক্ষণাবেক্ষণযোগ্য এবং পরিমাপযোগ্য পরিষেবা যা REST স্থাপত্যের উপর নির্মিত। আরামদায়ক ওয়েব পরিষেবা, কলিং ক্লায়েন্টের কাছে একটি নিরাপদ, অভিন্ন, রাষ্ট্রহীন পদ্ধতিতে আপনার আবেদন থেকে API প্রকাশ করুন। কলিং ক্লায়েন্ট রেস্টফুল সার্ভিস ব্যবহার করে পূর্বনির্ধারিত অপারেশন করতে পারে। REST এর অন্তর্নিহিত প্রোটোকল হল HTTP। REST হল REpresentational State Transfer।

এই REST API টিউটোরিয়ালে, আপনি শিখবেন-

RESTful কী উপাদান

আরইএসটি ওয়েব পরিষেবাগুলি প্রতিষ্ঠার পর থেকে সত্যিই অনেক দূর এগিয়ে এসেছে। 2002 সালে, ওয়েব কনসোর্টিয়াম WSDL এবং SOAP ওয়েব পরিষেবার সংজ্ঞা প্রকাশ করেছিল। এটি কীভাবে ওয়েব পরিষেবাগুলি প্রয়োগ করা হয় তার মান তৈরি করে।

2004 সালে, ওয়েব কনসোর্টিয়াম RESTful নামে একটি অতিরিক্ত মান সংজ্ঞা প্রকাশ করে। গত কয়েক বছর ধরে, এই মানটি বেশ জনপ্রিয় হয়ে উঠেছে। এবং এটি ব্যবহার করা হচ্ছে বিশ্বের অনেক জনপ্রিয় ওয়েবসাইট যার মধ্যে রয়েছে ফেসবুক এবং টুইটার।

আরইএসটি হল একটি নির্দিষ্ট পরিবেশে থাকা সম্পদগুলি অ্যাক্সেস করার একটি উপায়। উদাহরণস্বরূপ, আপনার একটি সার্ভার থাকতে পারে যা গুরুত্বপূর্ণ নথি বা ছবি বা ভিডিও হোস্ট করতে পারে। এই সবই সম্পদের উদাহরণ। যদি একজন ক্লায়েন্ট, বলে যে একটি ওয়েব ব্রাউজারের এই সম্পদগুলির কোনটি প্রয়োজন, তাহলে এই সংস্থানগুলি অ্যাক্সেস করার জন্য সার্ভারে একটি অনুরোধ পাঠাতে হবে। এখন REST পরিষেবাগুলি কীভাবে এই সম্পদগুলি অ্যাক্সেস করা যায় তার একটি উপায় নির্ধারণ করে।

একটি RESTful বাস্তবায়নের মূল উপাদান নিম্নরূপ:

  1. সম্পদ - প্রথম মূল উপাদান হল সম্পদ নিজেই। ধরুন যে একটি সার্ভারে একটি ওয়েব অ্যাপ্লিকেশনটিতে বেশ কয়েকজন কর্মীর রেকর্ড রয়েছে। ধরা যাক ওয়েব অ্যাপ্লিকেশনের URL হল https://demo.on2vhf.be । এখন আরইএসটি পরিষেবার মাধ্যমে একজন কর্মচারী রেকর্ড সম্পদ অ্যাক্সেস করার জন্য, কেউ কমান্ডটি জারি করতে পারে https://demo.on2vhf.be/employee/1 - এই কমান্ড ওয়েব সার্ভারকে দয়া করে সেই কর্মচারীর বিশদ বিবরণ দিতে বলে যার কর্মচারী নম্বর 1।

  2. ক্রিয়া অনুরোধ করুন - সম্পদ দিয়ে আপনি কি করতে চান তা বর্ণনা করে। একটি ব্রাউজার একটি GET ক্রিয়া ইস্যু করে যাতে এন্ডপয়েন্টটি তথ্য পেতে চায়। যাইহোক, POST, PUT, এবং DELETE এর মতো আরও অনেক ক্রিয়া পাওয়া যায়। উদাহরণের ক্ষেত্রে তাই https://demo.on2vhf.be/employee/1 , ওয়েব ব্রাউজার আসলে একটি GET Verb জারি করছে কারণ এটি কর্মচারী রেকর্ডের বিবরণ পেতে চায়।

  3. হেডার অনুরোধ করুন - এই অনুরোধের সাথে পাঠানো অতিরিক্ত নির্দেশাবলী। এগুলি প্রয়োজনীয় ধরণের প্রতিক্রিয়া বা অনুমোদনের বিবরণ নির্ধারণ করতে পারে।

  4. রিকোয়েস্ট বডি - অনুরোধের সাথে ডেটা পাঠানো হয়। REST ওয়েব সার্ভিসে একটি POST অনুরোধ করা হলে সাধারণত অনুরোধে ডেটা পাঠানো হয়। একটি পোস্ট কলে, ক্লায়েন্ট আসলে REST ওয়েব পরিষেবাগুলিকে বলে যে এটি সার্ভারে একটি সম্পদ যুক্ত করতে চায়। অতএব, রিকোয়েস্ট বডির কাছে রিসোর্সের বিবরণ থাকবে যা সার্ভারে যুক্ত করা প্রয়োজন।

  5. প্রতিক্রিয়া শরীর - এটি সাড়া দেওয়ার প্রধান অংশ। সুতরাং আমাদের RESTful API উদাহরণে, যদি আমরা অনুরোধের মাধ্যমে ওয়েব সার্ভারকে জিজ্ঞাসা করি https://demo.on2vhf.be/employee/1 , ওয়েব সার্ভার রেসপন্স বডিতে কর্মচারীর সমস্ত বিবরণ সহ একটি এক্সএমএল ডকুমেন্ট ফেরত দিতে পারে।

  6. প্রতিক্রিয়া অবস্থা কোড - এই কোডগুলি সাধারণ কোড যা ওয়েব সার্ভারের প্রতিক্রিয়া সহ ফেরত দেওয়া হয়। একটি উদাহরণ হল 200 কোড যা সাধারণত ক্লায়েন্টকে প্রতিক্রিয়া ফেরানোর সময় কোন ত্রুটি না থাকলে ফেরত দেওয়া হয়।

বিশ্রাম পদ্ধতি

নীচের চিত্রটি বেশিরভাগ ক্রিয়াপদ (POST, GET, PUT, এবং DELETE) এবং একটি REST API উদাহরণ দেখায় যা তারা বোঝাবে।

আসুন আমরা অনুমান করি যে আমাদের একটি RESTful ওয়েব পরিষেবা অবস্থানটিতে সংজ্ঞায়িত করা হয়েছে। https://demo.on2vhf.be/employee । যখন ক্লায়েন্ট এই ওয়েব সার্ভিসের জন্য কোন অনুরোধ করে, তখন এটি GET, POST, DELETE এবং PUT এর যেকোনো সাধারণ HTTP ক্রিয়া নির্দিষ্ট করতে পারে। ক্লায়েন্ট দ্বারা সংশ্লিষ্ট ক্রিয়াগুলি পাঠানো হলে কী হবে তা নীচে রয়েছে।

  1. পোস্ট - এটি RESTful ওয়েব পরিষেবা ব্যবহার করে একটি নতুন কর্মচারী তৈরি করতে ব্যবহৃত হবে
  2. পাওয়া - এটি RESTful ওয়েব পরিষেবা ব্যবহার করে সকল কর্মীর তালিকা পেতে ব্যবহৃত হবে
  3. PUT - এটি RESTful ওয়েব পরিষেবা ব্যবহার করে সমস্ত কর্মচারীকে আপডেট করতে ব্যবহৃত হবে
  4. মুছে ফেলা - এটি RESTful পরিষেবাগুলি ব্যবহার করে সমস্ত কর্মচারীকে মুছে ফেলার জন্য ব্যবহার করা হবে

আসুন শুধু একটি রেকর্ডের দৃষ্টিকোণ থেকে দেখে নেওয়া যাক। ধরা যাক 1 এর কর্মচারী নম্বর সহ একটি কর্মচারী রেকর্ড ছিল।

নিম্নলিখিত ক্রিয়াগুলির তাদের নিজ নিজ অর্থ থাকবে।

  1. পোস্ট - এটি প্রযোজ্য হবে না কারণ আমরা কর্মী 1 এর ডেটা নিয়ে আসছি যা ইতিমধ্যে তৈরি করা হয়েছে।
  2. পাওয়া - এটি RESTful ওয়েব পরিষেবা ব্যবহার করে 1 নম্বর কর্মচারী সহ কর্মীর বিবরণ পেতে ব্যবহৃত হবে
  3. PUT - এটি RESTful ওয়েব পরিষেবা ব্যবহার করে কর্মচারী নম্বর 1 এর সাথে কর্মচারীর বিবরণ আপডেট করতে ব্যবহৃত হবে
  4. মুছে ফেলা - এটি 1 হিসাবে কর্মচারী নম্বর সহ কর্মীর বিবরণ মুছে ফেলার জন্য ব্যবহৃত হয়

শান্ত কেন

নিম্নোক্ত কারণে বিশ্রাম বেশিরভাগ জনপ্রিয়তা পেয়েছে:

  1. ভিন্নধর্মী ভাষা এবং পরিবেশ - এটি অন্যতম মৌলিক কারণ যা আমরা দেখেছি সাবান যেমন.
  • এটি বিভিন্ন প্রোগ্রামিং ভাষার উপর নির্মিত ওয়েব অ্যাপ্লিকেশনগুলিকে একে অপরের সাথে যোগাযোগ করতে সক্ষম করে
  • বিশ্রামমূলক পরিষেবার সাহায্যে, এই ওয়েব অ্যাপ্লিকেশনগুলি বিভিন্ন পরিবেশে থাকতে পারে, কিছু উইন্ডোজে থাকতে পারে এবং অন্যগুলি লিনাক্সে থাকতে পারে।

কিন্তু শেষ পর্যন্ত, পরিবেশ যাই হোক না কেন, শেষ ফলাফল সবসময় একই হওয়া উচিত যাতে তারা একে অপরের সাথে কথা বলতে সক্ষম হয়। বিশ্রামশীল ওয়েব পরিষেবাগুলি একে অপরের সাথে কথা বলার জন্য বিভিন্ন প্রোগ্রামিং ভাষা এবং প্ল্যাটফর্মে নির্মিত অ্যাপ্লিকেশনগুলিতে এই নমনীয়তা সরবরাহ করে।

নিচের ছবিটি একটি ওয়েব অ্যাপ্লিকেশনের উদাহরণ দেয় যার অন্যান্য অ্যাপ্লিকেশন যেমন ফেসবুক, টুইটার এবং গুগলের সাথে কথা বলার প্রয়োজন রয়েছে।

এখন যদি কোন ক্লায়েন্ট অ্যাপ্লিকেশনকে ফেসবুক, টুইটার ইত্যাদির মতো সাইটগুলির সাথে কাজ করতে হয় তবে তাদের সম্ভবত জানতে হবে যে ফেসবুক, গুগল এবং টুইটার কোন ভাষায় নির্মিত এবং কোন প্লাটফর্মে তারা নির্মিত।

এর উপর ভিত্তি করে, আমরা আমাদের ওয়েব অ্যাপ্লিকেশনের জন্য ইন্টারফেসিং কোড লিখতে পারি, কিন্তু এটি একটি দুmaস্বপ্ন হতে পারে।

ফেসবুক, টুইটার এবং গুগল তাদের কার্যকারিতা বিশ্রামশীল ওয়েব পরিষেবাগুলির আকারে প্রকাশ করে। এটি কোনও ক্লায়েন্ট অ্যাপ্লিকেশনকে REST এর মাধ্যমে এই ওয়েব পরিষেবাগুলিতে কল করার অনুমতি দেয়।

  1. ডিভাইসের ঘটনা - আজকাল, সবকিছুই মোবাইল ডিভাইসে কাজ করার প্রয়োজন হয়, তা মোবাইল ডিভাইস, নোটবুক বা এমনকি গাড়ির সিস্টেম।

    আপনি কি সাধারণ ওয়েব অ্যাপ্লিকেশনগুলির সাথে কথা বলার জন্য এই ডিভাইসগুলিতে অ্যাপ্লিকেশনগুলি কোড করার চেষ্টা করার চেষ্টা করতে পারেন তা কল্পনা করতে পারেন? আবার রেস্টফুল এপিআই এই কাজটিকে সহজ করে তুলতে পারে কারণ 1 নং পয়েন্টে উল্লেখ করা হয়েছে, ডিভাইসের অন্তর্নিহিত স্তরটি কী তা আপনাকে সত্যিই জানার দরকার নেই।

  2. অবশেষে মেঘের ঘটনা - সবকিছু মেঘের দিকে চলে যাচ্ছে। অ্যাপ্লিকেশনগুলি ধীরে ধীরে ক্লাউড-ভিত্তিক সিস্টেমে চলে যাচ্ছে যেমন Azure বা Amazon। আজুর এবং অ্যামাজন বিশুদ্ধ স্থাপত্যের উপর ভিত্তি করে অনেকগুলি API সরবরাহ করে। অতএব, অ্যাপ্লিকেশনগুলিকে এখন এমনভাবে বিকাশ করা দরকার যাতে সেগুলি ক্লাউডের সাথে সামঞ্জস্যপূর্ণ হয়। সুতরাং যেহেতু সমস্ত ক্লাউড-ভিত্তিক আর্কিটেকচার REST নীতির উপর কাজ করে, তাই ক্লাউড-ভিত্তিক পরিষেবার সর্বোত্তম ব্যবহার করার জন্য REST পরিষেবা ভিত্তিক স্থাপত্যের উপর ওয়েব পরিষেবাগুলি প্রোগ্রাম করা আরও বেশি বোধগম্য হয়।

প্রশান্ত স্থাপত্য

একটি অ্যাপ্লিকেশন বা স্থাপত্য যা RESTful বা REST- শৈলী হিসাবে বিবেচিত হয় তার নিম্নলিখিত বৈশিষ্ট্য রয়েছে

  1. রাষ্ট্র এবং কার্যকারিতা বিতরণকৃত সম্পদে বিভক্ত - এর মানে হল যে প্রতিটি সম্পদ GET, POST, PUT, বা DELETE এর স্বাভাবিক HTTP কমান্ডের মাধ্যমে অ্যাক্সেসযোগ্য হওয়া উচিত। সুতরাং যদি কেউ সার্ভার থেকে একটি ফাইল পেতে চায়, তাদের GET অনুরোধ জারি করতে এবং ফাইলটি পেতে সক্ষম হওয়া উচিত। যদি তারা সার্ভারে একটি ফাইল রাখতে চায়, তাহলে তাদের POST বা PUT অনুরোধ করতে সক্ষম হওয়া উচিত। এবং পরিশেষে, যদি তারা সার্ভার থেকে একটি ফাইল মুছে ফেলতে চায়, তাহলে তারা DELETE অনুরোধ করে।
  2. আর্কিটেকচার হল ক্লায়েন্ট/সার্ভার, স্টেটলেস, স্তরযুক্ত এবং ক্যাশিং সমর্থন করে -
  • ক্লায়েন্ট-সার্ভার হল সাধারণ আর্কিটেকচার যেখানে সার্ভার হতে পারে ওয়েব সার্ভার অ্যাপ্লিকেশন হোস্ট করা, এবং ক্লায়েন্ট ওয়েব ব্রাউজারের মত সহজ হতে পারে।
  • স্টেটলেস মানে যে আবেদনের অবস্থা আরইএসটি -তে বজায় থাকে না।

    উদাহরণস্বরূপ, যদি আপনি DELETE কমান্ড ব্যবহার করে একটি সার্ভার থেকে একটি সম্পদ মুছে ফেলেন, তাহলে আপনি এই অনুরোধটি মুছে ফেলার তথ্যটি পরবর্তী অনুরোধে পাঠানোর আশা করতে পারবেন না।

    রিসোর্সটি মুছে ফেলা হয়েছে তা নিশ্চিত করার জন্য, আপনাকে GET অনুরোধ জারি করতে হবে। GET অনুরোধটি প্রথমে সার্ভারে সমস্ত সম্পদ পেতে ব্যবহৃত হবে। যার পরে একজনকে দেখতে হবে যে সম্পদটি আসলে মুছে ফেলা হয়েছে কিনা।

RESTFul নীতিমালা এবং সীমাবদ্ধতা

আরইএসটি স্থাপত্যটি কয়েকটি বৈশিষ্ট্যের উপর ভিত্তি করে যা নীচে বিস্তারিতভাবে বর্ণনা করা হয়েছে। যে কোনো RESTful ওয়েব সার্ভিসকে RESTful বলা হওয়ার জন্য নিচের বৈশিষ্ট্যগুলো মেনে চলতে হবে। এই বৈশিষ্ট্যগুলি নকশা নীতি হিসাবেও পরিচিত যা RESTful ভিত্তিক পরিষেবাগুলির সাথে কাজ করার সময় অনুসরণ করা প্রয়োজন।

  1. RESTFul ক্লায়েন্ট-সার্ভার

এটি একটি REST ভিত্তিক স্থাপত্যের সবচেয়ে মৌলিক প্রয়োজন। এর মানে হল যে সার্ভারে একটি RESTful ওয়েব সার্ভিস থাকবে যা ক্লায়েন্টকে প্রয়োজনীয় কার্যকারিতা প্রদান করবে। ক্লায়েন্ট সার্ভারে ওয়েব পরিষেবাতে একটি অনুরোধ পাঠায়। সার্ভার হয় অনুরোধ প্রত্যাখ্যান করবে অথবা মেনে চলবে এবং ক্লায়েন্টকে পর্যাপ্ত সাড়া দেবে।

  1. রাষ্ট্রহীন

স্টেটলেস ধারণাটির অর্থ হল ক্লায়েন্টের উপর নির্ভর করে যে সমস্ত প্রয়োজনীয় তথ্য সার্ভারে সরবরাহ করা হয়েছে। এটি প্রয়োজন যাতে সার্ভার যথাযথভাবে প্রতিক্রিয়া প্রক্রিয়া করতে পারে। ক্লায়েন্টের অনুরোধের মধ্যে সার্ভারের কোনো ধরনের তথ্য রাখা উচিত নয়। এটি একটি খুব সহজ স্বাধীন প্রশ্ন-উত্তর ক্রম। ক্লায়েন্ট একটি প্রশ্ন জিজ্ঞাসা করে, সার্ভার যথাযথভাবে উত্তর দেয়। ক্লায়েন্ট আরেকটি প্রশ্ন করবে। সার্ভার আগের প্রশ্ন-উত্তর দৃশ্য মনে রাখবে না এবং স্বাধীনভাবে নতুন প্রশ্নের উত্তর দিতে হবে।

  1. ক্যাশে

ক্যাশে ধারণাটি রাষ্ট্রবিহীন সমস্যাকে সহায়তা করা যা শেষ পয়েন্টে বর্ণিত হয়েছিল। যেহেতু প্রতিটি সার্ভার ক্লায়েন্ট রিকোয়েস্ট প্রকৃতিতে স্বাধীন, তাই কখনও কখনও ক্লায়েন্ট সার্ভারকে একই অনুরোধের জন্য আবার জিজ্ঞাসা করতে পারে। যদিও এটি অতীতে এটি ইতিমধ্যেই চেয়েছিল। এই অনুরোধ সার্ভারে যাবে, এবং সার্ভার একটি প্রতিক্রিয়া দেবে। এটি নেটওয়ার্ক জুড়ে ট্রাফিক বৃদ্ধি করে। ক্যাশে হল এমন একটি ধারণা যা ক্লায়েন্টের কাছে রিকোয়েস্ট রিকোয়েস্ট করা হয় যা ইতিমধ্যেই সার্ভারে পাঠানো হয়েছে। সুতরাং যদি একই অনুরোধ ক্লায়েন্ট দ্বারা দেওয়া হয়, সার্ভারে যাওয়ার পরিবর্তে, এটি ক্যাশে গিয়ে প্রয়োজনীয় তথ্য পাবে। এটি ক্লায়েন্ট থেকে সার্ভারে নেটওয়ার্ক ট্র্যাফিকের পরিমাণ সংরক্ষণ করে।

  1. স্তরযুক্ত সিস্টেম

একটি স্তরযুক্ত সিস্টেমের ধারণা হল যে ক্লায়েন্ট এবং RESTFul ওয়েব সার্ভিসের হোস্টিং করা প্রকৃত সার্ভারের মধ্যে যে কোনো অতিরিক্ত স্তর যেমন মিডলওয়্যার লেয়ার insোকানো যেতে পারে (মিডলওয়্যার লেয়ারটি যেখানে সমস্ত ব্যবসায়িক যুক্তি তৈরি করা হয়। এটি একটি অতিরিক্ত পরিষেবা হতে পারে ওয়েব সার্ভিসে কল করার আগে ক্লায়েন্টের সাথে যোগাযোগ করতে পারে। কিন্তু এই স্তরটির প্রবর্তন স্বচ্ছ হওয়া প্রয়োজন যাতে এটি ক্লায়েন্ট এবং সার্ভারের মধ্যে মিথস্ক্রিয়াকে ব্যাহত না করে।

  1. ইন্টারফেস/ইউনিফর্ম চুক্তি

RESTful ওয়েব সেবা কিভাবে কাজ করা উচিত তার অন্তর্নিহিত কৌশল এটি। RESTful মূলত HTTP ওয়েব লেয়ারে কাজ করে এবং সার্ভারে রিসোর্স নিয়ে কাজ করার জন্য নিচের মূল ক্রিয়াগুলি ব্যবহার করে

  • পোস্ট - সার্ভারে একটি সম্পদ তৈরি করতে
  • GET - সার্ভার থেকে একটি সম্পদ পুনরুদ্ধার করতে
  • PUT - একটি সম্পদের অবস্থা পরিবর্তন করতে বা এটি আপডেট করতে
  • মুছুন - সার্ভার থেকে একটি সম্পদ অপসারণ বা মুছে ফেলার জন্য

ASP.NET এ আপনার প্রথম বিশ্রামশীল ওয়েব পরিষেবা তৈরি করুন

এখন এই REST API টিউটোরিয়ালে, আমরা শিখব কিভাবে ASP.NET এ একটি বিশুদ্ধ ওয়েব পরিষেবা তৈরি করতে হয়:

ওয়েব সার্ভিস বিভিন্ন ভাষায় তৈরি করা যায়। REST- ভিত্তিক পরিষেবা তৈরির জন্য অনেকগুলি সমন্বিত উন্নয়ন পরিবেশ ব্যবহার করা যেতে পারে।

এই RESTful API উদাহরণে, আমরা ভিসুয়াল স্টুডিও ব্যবহার করে .NET এ আমাদের REST অ্যাপ্লিকেশন তৈরি করতে যাচ্ছি। আমাদের উদাহরণে, বিশুদ্ধ ওয়েব পরিষেবার জন্য আমরা নিম্নলিখিত REST পরিষেবার উদাহরণ অনুকরণ করতে যাচ্ছি।

আমরা একটি বিশুদ্ধ ওয়েব পরিষেবা করতে যাচ্ছি যা নীচের ডেটা সেটে কাজ করবে।

নীচের ডেটার সেটটি একটি REST API উদাহরণের প্রতিনিধিত্ব করে একটি কোম্পানি যা টিউটোরিয়ালের উপর ভিত্তি করে টিউটোরিয়াল প্রকাশ করে।

টিউটোরিয়াল টিউটোরিয়াল নাম
0অ্যারে
সারি
2স্ট্যাক

আমাদের REST API টিউটোরিয়াল উদাহরণে, আমরা নীচের বিশ্রামক ক্রিয়াগুলি বাস্তবায়ন করতে যাচ্ছি।

  1. GET টিউটোরিয়াল - যখন একজন ক্লায়েন্ট এই রেস্টফুল API ব্যবহার করেন, তখন তাদের ওয়েব সার্ভিস থেকে পাওয়া টিউটোরিয়ালের সম্পূর্ণ সেট দেওয়া হবে।
  2. GET Tutorial/Tutorialid - যখন কোন ক্লায়েন্ট এই রেস্টফুল API ব্যবহার করে, তখন তাদের ক্লায়েন্টের পাঠানো Tutorialid এর উপর ভিত্তি করে টিউটোরিয়াল নাম দেওয়া হবে।
  3. পোস্ট টিউটোরিয়াল/টিউটোরিয়াল নাম - যখন একজন ক্লায়েন্ট এই রেস্টফুল এপিআই চালু করে, ক্লায়েন্ট একটি টিউটোরিয়াল নাম সন্নিবেশ করার অনুরোধ জমা দেবে। ওয়েব সার্ভিস তখন জমা দেওয়া টিউটোরিয়াল নামটি সংগ্রহে যুক্ত করবে।
  4. টিউটোরিয়াল/টিউটোরিয়াল ডিলিট করুন- যখন একজন ক্লায়েন্ট এই বিশ্রামশীল এপিআই চালু করেন, ক্লায়েন্ট টিউটোরিয়ালের উপর ভিত্তি করে একটি টিউটোরিয়াল নাম মুছে ফেলার অনুরোধ জমা দেবে। ওয়েব পরিষেবা তারপরে সংগ্রহ থেকে জমা দেওয়া টিউটোরিয়াল নামটি মুছে দেবে।

আসুন আমাদের প্রথম RESTful ওয়েব পরিষেবাগুলি তৈরি করতে এই RESTful API টিউটোরিয়ালে নিচের ধাপগুলো অনুসরণ করি, যা উপরের বাস্তবায়ন বহন করে।

ধাপ 1) প্রথম ধাপ হল একটি খালি Asp.Net ওয়েব অ্যাপ্লিকেশন তৈরি করা। ভিসুয়াল স্টুডিও 2013 থেকে, মেনু বিকল্প ফাইল-> নতুন প্রকল্পে ক্লিক করুন।

একবার আপনি নতুন প্রকল্প বিকল্পে ক্লিক করলে, ভিজ্যুয়াল স্টুডিও আপনাকে প্রকল্পের ধরণ নির্বাচন করার জন্য এবং প্রকল্পের প্রয়োজনীয় বিবরণ দেওয়ার জন্য আরেকটি ডায়ালগ বক্স দেবে। এই RESTful API টিউটোরিয়ালের পরবর্তী ধাপে এটি ব্যাখ্যা করা হয়েছে

ধাপ ২) এই ধাপে,

  1. প্রথমে ASP.NET ওয়েব অ্যাপ্লিকেশনের RESTful ওয়েব সার্ভিস C# ওয়েব টেমপ্লেট নির্বাচন করা নিশ্চিত করুন। ওয়েব সার্ভিস প্রজেক্ট তৈরির জন্য প্রকল্পটি এই ধরণের হতে হবে। এই বিকল্পগুলি চয়ন করে, ভিজ্যুয়াল স্টুডিও প্রয়োজনীয় ফাইলগুলি যুক্ত করার জন্য প্রয়োজনীয় পদক্ষেপগুলি সম্পাদন করবে যা কোনও ওয়েব-ভিত্তিক অ্যাপ্লিকেশন দ্বারা প্রয়োজনীয়।
  2. আপনার প্রকল্পের জন্য একটি নাম দিন যা আমাদের ক্ষেত্রে 'webservice.REST' হিসাবে দেওয়া হয়েছে।
  3. তারপর একটি লোকেশন দেওয়া নিশ্চিত করুন, যেখানে প্রকল্প ফাইল সংরক্ষণ করা হবে।

একবার হয়ে গেলে আপনি ভিজ্যুয়াল স্টুডিও 2013 এ আপনার সমাধান এক্সপ্লোরারে তৈরি প্রকল্প ফাইলটি দেখতে পাবেন।

ধাপ 3) পরবর্তী ধাপ হল ওয়েব সার্ভিস ফাইল তৈরি করা যার মধ্যে RESTful ওয়েব সার্ভিস থাকবে

  1. প্রথমে নিচের চিত্রের মত প্রজেক্ট ফাইলে ডান ক্লিক করুন

  1. এই ধাপে,
    1. প্রকল্প ফাইলে ডান ক্লিক করুন
    2. 'Add-> new item' বিকল্পটি বেছে নিন।

প্রদর্শিত ডায়ালগ বক্সে, আপনাকে নিম্নলিখিতগুলি সম্পাদন করতে হবে

  1. WCF পরিষেবার বিকল্পটি বেছে নিন (Ajax- সক্ষম)-এই ধরনের একটি ফাইল চয়ন করুন, এটি ভিজ্যুয়াল স্টুডিওতে কিছু মৌলিক কোড যুক্ত করে যা একটি RESTful ওয়েব পরিষেবা তৈরি করতে সাহায্য করে। WCF মানে উইন্ডোজ কমিউনিকেশন ফাউন্ডেশন। টিসিপি, এইচটিটিপি, এইচটিটিপিএসের মতো বিভিন্ন প্রোটোকলের মাধ্যমে যোগাযোগের জন্য বিভিন্ন প্ল্যাটফর্ম বা একই প্ল্যাটফর্মের অ্যাপ্লিকেশনের জন্য ডব্লিউসিএফ একটি লাইব্রেরি। Ajax মূলত অ্যাসিঙ্ক্রোনাস জাভাস্ক্রিপ্ট এবং XML। AJAX ওয়েব পেজগুলিকে পর্দার পিছনে সার্ভারের সাথে অল্প পরিমাণে ডেটা আদান -প্রদানের মাধ্যমে অসিঙ্ক্রোনাসভাবে আপডেট করার অনুমতি দেয়।
  2. তারপরে পরিষেবাটির জন্য একটি নাম দিন যা আমাদের ক্ষেত্রে টিউটোরিয়াল সার্ভিস।
  3. অবশেষে, সমাধানটিতে পরিষেবা যুক্ত করতে অ্যাড বোতামটি ক্লিক করুন।

ধাপ 4) পরবর্তী ধাপটি আসলে একটি কনফিগারেশন পরিবর্তন করা যাতে এই প্রকল্পটি RESTful ওয়েব পরিষেবার সাথে কাজ সম্পন্ন করতে সক্ষম হয়। এর জন্য বলা ফাইলটিতে একটি পরিবর্তন করা প্রয়োজন Web.config । এই ফাইলটি ওয়েব সার্ভিস প্রকল্প ফাইলের মতো একই উইন্ডোতে প্রদর্শিত হয়। Web.config ফাইলটিতে এমন সব কনফিগারেশন রয়েছে যা ওয়েব অ্যাপ্লিকেশনটিকে যেমন কাজ করতে দেয় তেমনি করে। যে পরিবর্তনটি করা হচ্ছে তা প্রকৃতপক্ষে অ্যাপ্লিকেশনটিকে বিশুদ্ধ RESTful ওয়েব পরিষেবা হিসাবে ডেটা পাঠাতে এবং গ্রহণ করতে দেয়।

  1. কোড খুলতে Web.config ফাইলে ক্লিক করুন

  1. লাইনের জন্য খুঁজুন

  1. এ লাইন পরিবর্তন করুন

ধাপ 5) এই RESTful API টিউটোরিয়ালের পরবর্তী ধাপ হল বাস্তবায়নের জন্য আমাদের কোড যোগ করা। নীচে উল্লিখিত সমস্ত কোড TutorialService.svc ফাইলে লিখতে হবে

  1. প্রথম বিট হল আমাদের ডেটা উপস্থাপনের জন্য কোড যোগ করা যা আমাদের প্রোগ্রামে ব্যবহৃত হবে। সুতরাং আমরা 'অ্যারে', 'কিউ' এবং 'স্ট্যাক' এর মান সহ স্ট্রিং ভেরিয়েবলের একটি তালিকা করতে যাচ্ছি। এটি আমাদের হোস্টিং ওয়েব পরিষেবার মাধ্যমে উপলব্ধ টিউটোরিয়ালের নাম উপস্থাপন করবে।

 namespace Webservice.REST { [ServiceContract(Namespace = '')] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed public class TutorialService { private static List lst = new List (new String[] {'Arrays','Queues','Stacks'}); 

ধাপ 6) পরবর্তী আমরা আমাদের GET পদ্ধতির জন্য কোড সংজ্ঞায়িত করব। এই কোডটি একই TutorialService.svc ফাইলেও থাকবে। যখনই আমরা আমাদের ব্রাউজার থেকে পরিষেবাটি কল করব তখন এই কোডটি চলবে।

নীচের পদ্ধতিটি নিচের উল্লিখিত দৃশ্যপট পূরণ করতে ব্যবহার করা হবে

  • যদি কোনও ব্যবহারকারী উপলব্ধ সমস্ত টিউটোরিয়ালের একটি তালিকা চান, তাহলে এটি সম্পন্ন করার জন্য নিচের কোডটি লিখতে হবে।

 [WebGet(UriTemplate='/Tutorial')] public String GetAllTutorial() { int count = 1st.Count; String TutorialList = ''; for (int i = 0; i 

কোড ব্যাখ্যা:-

  1. কোডের প্রথম লাইনটি সবচেয়ে গুরুত্বপূর্ণ। এটি একটি URL এর মাধ্যমে কিভাবে আমরা এই পদ্ধতিটি কল করতে পারি তা নির্ধারণ করতে ব্যবহৃত হয়। সুতরাং আমাদের ওয়েব সেবার লিঙ্ক যদি হয় http: // localhost: 52645/TutorialService.svc এবং যদি আমরা '/টিউটোরিয়াল' URL- এ যুক্ত করি http: // localhost: 52645/TutorialService.svc/Tutorial , উপরের কোডটি চালু করা হবে। 'WebGet' এর বৈশিষ্ট্য হল একটি প্যারামিটার যা এই পদ্ধতিটিকে একটি RESTful পদ্ধতি হতে দেয় যাতে এটি GET ক্রিয়ার মাধ্যমে প্রয়োগ করা যায়।
  2. কোডের এই বিভাগটি 'lst' ভেরিয়েবলে আমাদের স্ট্রিংগুলির তালিকার মধ্য দিয়ে যেতে এবং তাদের সবাইকে কলিং প্রোগ্রামে ফেরত দিতে ব্যবহৃত হয়।

ধাপ 7) নিচের কোডটি নিশ্চিত করে যে যদি একটি GET কল টিউটোরিয়াল সার্ভিসে টিউটোরিয়াল আইডি দিয়ে করা হয়, তাহলে এটি টিউটোরিয়াল আইডির উপর ভিত্তি করে সংশ্লিষ্ট টিউটোরিয়াল নামটি ফেরত দেবে।

 [WebGet (UriTemplate = '/Tutorial/{Tutorialid}')] public String GetTutorialbyID(String Tutorialid) { int pid; Int32.TryParse(Tutorialid, out pid); return lst[pid]; } 

কোড ব্যাখ্যা:-

  1. কোডের প্রথম লাইনটি সবচেয়ে গুরুত্বপূর্ণ। এটি একটি URL এর মাধ্যমে কিভাবে আমরা এই পদ্ধতিটি কল করতে পারি তা নির্ধারণ করতে ব্যবহৃত হয়। সুতরাং আমাদের ওয়েব সেবার লিঙ্ক যদি হয় http: // localhost: 52645/TutorialService.svc এবং যদি আমরা URL- এ '/Tutorial/{Tutorialid}' যুক্ত করি, তাহলে আমরা ওয়েব সার্ভিসকে কল করতে সক্ষম হব http: // localhost: 52645/TutorialService.svc/Tutorial/1 একটি উদাহরণ হিসাবে। ওয়েব সার্ভিসকে টিউটোরিয়াল নামটি ফেরত দিতে হবে যার টিউটোরিয়াল আইডি#1 ছিল।
  2. কোডের এই বিভাগটি 'টিউটোরিয়াল নাম' ফেরত দেওয়ার জন্য ব্যবহার করা হয় যার ওয়েব পদ্ধতিতে টিউটোরিয়াল আইডি দেওয়া আছে।
  • ডিফল্টরূপে, যা মনে রাখা দরকার তা হল ব্রাউজারে URL- এ যা কিছু পাঠানো হয় তা একটি স্ট্রিং।
  • কিন্তু আপনাকে মনে রাখতে হবে যে আমাদের তালিকায় সূচকটি একটি পূর্ণসংখ্যা হতে হবে, তাই আমরা প্রথমে টিউটোরিয়ালিডকে একটি পূর্ণসংখ্যায় রূপান্তর করার জন্য প্রয়োজনীয় কোড যুক্ত করছি এবং তারপর আমাদের তালিকায় সূচকের অবস্থান অ্যাক্সেস করতে এটি ব্যবহার করি এবং
  • তারপর সেই অনুযায়ী কলিং প্রোগ্রামে মান ফেরত দিন।

ধাপ 8) পরবর্তী ধাপ হল আমাদের POST পদ্ধতির জন্য কোড লেখা। যখনই আমরা POST পদ্ধতির মাধ্যমে আমাদের টিউটোরিয়ালের তালিকায় একটি স্ট্রিং মান যোগ করতে চাই তখনই এই পদ্ধতিটি চালু করা হবে। উদাহরণস্বরূপ, যদি আপনি 'সফটওয়্যার টেস্টিং' এর টিউটোরিয়াল নাম যোগ করতে চান তাহলে আপনাকে POST পদ্ধতি ব্যবহার করতে হবে।

কোড ব্যাখ্যা:-

  1. প্রথম লাইন হল 'WebInvoke' অ্যাট্রিবিউট যা আমাদের পদ্ধতিতে সংযুক্ত করা হয়েছে। এটি POST কলের মাধ্যমে পদ্ধতিটি চালু করার অনুমতি দেয়। RequestFormat এবং ResponseFormat অ্যাট্রিবিউট JSON হিসাবে উল্লেখ করতে হবে, যেহেতু একটি RESTFul ওয়েব সার্ভিসে মান পোস্ট করার সময়, মানগুলি এই বিন্যাসে থাকতে হবে।
  2. কোডের দ্বিতীয় লাইনটি POST কলের মাধ্যমে পাস করা স্ট্রিং মানটি আমাদের বিদ্যমান টিউটোরিয়াল স্ট্রিংগুলির তালিকায় যুক্ত করতে ব্যবহৃত হয়।

ধাপ 9) অবশেষে আমরা DELETE অপারেশন পরিচালনা করার জন্য আমাদের পদ্ধতি যোগ করতে যাচ্ছি। এই পদ্ধতিটি চালু করা হবে যখনই আমরা আমাদের টিউটোরিয়ালের তালিকা থেকে DELETE পদ্ধতির মাধ্যমে একটি বিদ্যমান স্ট্রিং মান মুছে ফেলতে চাই।

 [WebInvoke(Method = 'DELETE', RequestFormat = WebMessageFormat.Ison, UriTemplate = '/Tutorial/{Tutorialid}', ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)] public void DeleteTutorial(String Tutorialid) { int pid; Int32.TryParse(Tutorialid, out pid); 1st.RemoveAt(pid); } 

কোড ব্যাখ্যা:-

  1. প্রথম লাইন হল 'WebInvoke' অ্যাট্রিবিউট যা আমাদের পদ্ধতিতে সংযুক্ত করা হয়েছে। এটি POST কলের মাধ্যমে পদ্ধতিটি চালু করার অনুমতি দেয়। RequestFormat এবং ResponseFormat অ্যাট্রিবিউট JSON হিসাবে উল্লেখ করতে হবে, যেহেতু একটি RESTFul ওয়েব সার্ভিসে মান পোস্ট করার সময়, মানগুলি এই বিন্যাসে থাকতে হবে। লক্ষ্য করুন যে পদ্ধতি প্যারামিটারটি 'DELETE' তে সেট করা হচ্ছে। এর মানে হল যে যখনই আমরা DELETE ক্রিয়া ইস্যু করি, এই পদ্ধতিটি চালু করা হবে।
  2. কোডের দ্বিতীয় লাইনটি DELETE কলের মাধ্যমে পাঠানো Tutorialid নিতে এবং পরবর্তীকালে সেই তালিকাটি আমাদের তালিকা থেকে মুছে ফেলার জন্য ব্যবহৃত হয়। (দ্য Int32 কোডের ফাংশন টিউটোরিয়াল আইডিকে স্ট্রিং ভেরিয়েবল থেকে পূর্ণসংখ্যায় রূপান্তর করতে ব্যবহৃত হয়)।

আপনার প্রথম বিশ্রামশীল ওয়েব পরিষেবা চালাচ্ছেন

এখন আমরা উপরের অংশে আমাদের সম্পূর্ণ ওয়েব পরিষেবা তৈরি করেছি। আসুন দেখি কিভাবে আমরা টিউটোরিয়াল সার্ভিসটি চালাতে পারি যাতে এটি কোন ক্লায়েন্টের কাছ থেকে আহ্বান করা যায়।

ওয়েব পরিষেবাটি চালানোর জন্য, দয়া করে নীচের পদক্ষেপগুলি অনুসরণ করুন

ধাপ 1) প্রোজেক্ট ফাইলে ডান ক্লিক করুন - Webservice.REST

ধাপ ২) 'স্টার্টআপ প্রজেক্ট হিসাবে সেট করুন' মেনু বিকল্পটি চয়ন করুন। এটি নিশ্চিত করবে যে এই প্রকল্পটি চালানো হয় যখন ভিজ্যুয়াল স্টুডিও সম্পূর্ণ সমাধানটি চালায়

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

আউটপুট:-

যখন প্রকল্পটি চালানো হয়, আপনি আপনার TutorialService.svc/Tutorial বিভাগে ব্রাউজ করতে পারেন, এবং আপনি নিচের আউটপুট পাবেন।

উপরের আউটপুটে,

  • আপনি দেখতে পাচ্ছেন যে ব্রাউজারটি 'GET' ক্রিয়া চালু করছে এবং ওয়েব সার্ভিসে 'GetAllTutorial' পদ্ধতিটি কার্যকর করছে। এই মডিউলটি আমাদের ওয়েব পরিষেবা দ্বারা প্রকাশিত সমস্ত টিউটোরিয়াল প্রদর্শন করতে ব্যবহৃত হয়।

আপনার প্রথম বিশ্রামশীল ওয়েব পরিষেবা পরীক্ষা করা হচ্ছে

উপরের অংশে, আমরা ইতিমধ্যে দেখেছি কিভাবে 'GET' ক্রিয়াটি সম্পাদন করতে এবং 'GetAllTutorial' চালু করার জন্য ব্রাউজার ব্যবহার করতে হয়।

  1. আসুন এখন নিম্নলিখিত ব্যবহারের ক্ষেত্রে দৃশ্যকল্পটি চালানোর জন্য ব্রাউজারটি ব্যবহার করি।

GET Tutorial/Tutorialid - যখন একজন ক্লায়েন্ট এই রেস্টফুল API ব্যবহার করে, তখন তাদের ক্লায়েন্টের পাঠানো Tutorialid এর উপর ভিত্তি করে টিউটোরিয়াল নাম দেওয়া হবে

আপনার ব্রাউজারে, URL- এ টিউটোরিয়াল শব্দের পর স্ট্রিং /1 যুক্ত করুন। আপনি যদি এন্টার বাটনে ক্লিক করেন, আপনি নিচের আউটপুটটি পাবেন

এখন আপনি কিউ এর আউটপুট দেখতে পাবেন যা আসলে আমাদের টিউটোরিয়াল স্ট্রিং এর তালিকার 1 নম্বরের সাথে মিলে যায়। এর মানে হল যে 'GetTutorialbyID' পদ্ধতিটি এখন আমাদের ওয়েবসাইট সার্ভিস থেকে আহ্বান করা হচ্ছে। এটি আরও দেখায় যে 1 এর মান ব্রাউজারের মাধ্যমে আমাদের ওয়েব পরিষেবা এবং আমাদের পদ্ধতিতে সফলভাবে প্রেরণ করা হচ্ছে এবং এজন্য আমরা ব্রাউজারে 'কিউ' এর সঠিক অনুরূপ মান পাচ্ছি।

  1. এরপরে নীচের দৃশ্যকল্পটি সম্পাদন করে আমাদের ওয়েব পরিষেবাটি ব্যবহার করা যাক। এর জন্য, আপনাকে 'ফিডলার' নামক টুলটি ইনস্টল করতে হবে যা সাইট থেকে বিনামূল্যে ডাউনলোডযোগ্য টুল।

পোস্ট টিউটোরিয়াল/টিউটোরিয়াল নাম - যখন একজন ক্লায়েন্ট এই রেস্টফুল এপিআই চালু করে, ক্লায়েন্ট একটি টিউটোরিয়াল নাম সন্নিবেশ করার অনুরোধ জমা দেবে। ওয়েব সার্ভিস তখন জমা দেওয়া টিউটোরিয়াল নামটি সংগ্রহে যুক্ত করবে।

ফিল্ডলার টুলটি চালান এবং নিচের ধাপগুলো সম্পাদন করুন;

  1. সুরকার বিভাগে যান। এটি এমন অনুরোধ তৈরি করতে ব্যবহৃত হয় যা যেকোনো ওয়েবে জমা দেওয়া যায়

    আবেদন

  2. নিশ্চিত করুন যে অনুরোধের ধরনটি 'পোস্ট' এবং সঠিক URL টি আঘাত করা হচ্ছে, যা আমাদের ক্ষেত্রে হওয়া উচিত http: // localhost: 52645/TutorialService.svc/Tutorial
  3. নিশ্চিত করুন যে বিষয়বস্তু-প্রকারটি অ্যাপ্লিকেশন/json হিসাবে চিহ্নিত করা আছে। মনে রাখবেন যে আমাদের ওয়েব সার্ভিসে আমাদের POST রিকোয়েস্ট পদ্ধতি শুধুমাত্র json স্টাইলের ডেটা গ্রহণ করে তাই আমাদের অ্যাপ্লিকেশনটিতে অনুরোধ পাঠানোর সময় এটি নির্দিষ্ট করা আছে তা নিশ্চিত করতে হবে।
  4. অবশেষে, আমাদের আমাদের ডেটা প্রবেশ করতে হবে। মনে রাখবেন POST এর জন্য আমাদের পদ্ধতি 'str' নামক একটি প্যারামিটার গ্রহণ করে। তাই এখানে আমরা উল্লেখ করছি যে আমরা আমাদের টিউটোরিয়াল নামের সংগ্রহে 'গাছ' নামে একটি মান যোগ করতে চাই এবং এটি নিশ্চিত করতে চাই যে এটি str পরিবর্তনশীল নামের ট্যাগযুক্ত।

অবশেষে, শুধু Fiddler এ Execute বাটনে ক্লিক করুন। এটি ওয়েব সার্ভিসের কাছে আমাদের ওয়েব সার্ভিসে 'গাছ' ডেটা পোস্ট করার জন্য একটি অনুরোধ পাঠাবে।

এখন, যখন আমরা আমাদের টিউটোরিয়াল তালিকায় সমস্ত স্ট্রিং দেখানোর জন্য টিউটোরিয়াল ইউআরএল ব্রাউজ করি, তখন আপনি দেখতে পাবেন 'গাছ' এর মানও উপস্থিত। এটি দেখায় যে ওয়েব সার্ভিসের POST অনুরোধ সফলভাবে সম্পাদিত হয়েছে এবং এটি আমাদের টিউটোরিয়াল তালিকায় সফলভাবে যোগ করা হয়েছে।

  1. এরপরে নীচের দৃশ্যকল্পটি সম্পাদন করে আমাদের ওয়েব পরিষেবাটি ব্যবহার করা যাক। এর জন্য আমাদের ফিডলার টুল ব্যবহার করতে হবে

টিউটোরিয়াল/টিউটোরিয়াল ডিলিট করুন- যখন একজন ক্লায়েন্ট এই বিশ্রামশীল এপিআই চালু করেন, ক্লায়েন্ট টিউটোরিয়ালের উপর ভিত্তি করে একটি টিউটোরিয়াল নাম মুছে ফেলার অনুরোধ জমা দেবে। ওয়েব পরিষেবা তারপরে সংগ্রহ থেকে জমা দেওয়া টিউটোরিয়াল নামটি মুছে দেবে।

ফিল্ডলার টুলটি চালান এবং নিচের ধাপগুলো সম্পাদন করুন

  1. সুরকার বিভাগে যান। এটি এমন অনুরোধ তৈরি করতে ব্যবহৃত হয় যা যেকোনো ওয়েবে জমা দেওয়া যায়

    আবেদন

  2. নিশ্চিত করুন যে অনুরোধের ধরনটি 'মুছে ফেলা' এবং সঠিক URL টি আঘাত করা হচ্ছে, যা আমাদের ক্ষেত্রে হওয়া উচিত http: // localhost: 52645/TutorialService.svc/Tutorial । নিশ্চিত করুন যে আইডি যা একটি প্যারামিটার হিসাবে URL এর মাধ্যমে পাঠানো তালিকায় একটি স্ট্রিং মুছে ফেলার জন্য ব্যবহৃত হয়। আমাদের REST উদাহরণে, আমরা 1 পাঠাচ্ছি তাই এটি 2 টি মুছে ফেলবেndআমাদের সংগ্রহের উপাদান যা 'সারি'।

অবশেষে, শুধু Fiddler এ Execute বাটনে ক্লিক করুন। এটি ওয়েব সার্ভিসের কাছে আমাদের ওয়েব সার্ভিসে ডেটা 'কিউ' মুছে ফেলার অনুরোধ পাঠাবে।

এখন, যখন আমরা আমাদের টিউটোরিয়াল তালিকায় সমস্ত স্ট্রিং দেখানোর জন্য টিউটোরিয়াল ইউআরএলে ব্রাউজ করি, তখন আপনি লক্ষ্য করবেন যে 'কিউ' এর মান আর নেই।

এটি দেখায় যে ওয়েব পরিষেবার জন্য DELETE অনুরোধ সফলভাবে কার্যকর করা হয়েছিল। আমাদের টিউটোরিয়াল স্ট্রিংয়ের তালিকায় সূচকের 1 নম্বর উপাদানটি সফলভাবে মুছে ফেলা হয়েছে।

সারসংক্ষেপ

  • REST হল REpresentational State Transfer। REST ওয়েব পরিষেবাগুলি তৈরি করতে ব্যবহৃত হয় যা হালকা ওজনের, রক্ষণাবেক্ষণযোগ্য এবং প্রকৃতিতে পরিমাপযোগ্য।
  • আরো এবং আরো অ্যাপ্লিকেশন বিশুদ্ধ স্থাপত্যের দিকে যাচ্ছে। এর কারণ হল যে এখন অনেক মানুষ মোবাইল ডিভাইস ব্যবহার করছে এবং ক্লাউডে চলে যাওয়া বিভিন্ন ধরণের অ্যাপ্লিকেশন।
  • REST- এর প্রধান দিক হল সার্ভার এবং GET, POST, PUT এবং DELETE- এর ক্রিয়াগুলিতে থাকা সম্পদ, যা এই সম্পদগুলির সাথে কাজ করতে ব্যবহার করা যেতে পারে।
  • ভিজ্যুয়াল স্টুডিও এবং.নেট বিশ্রামশীল ওয়েব পরিষেবা তৈরি করতে ব্যবহার করা যেতে পারে।
  • POST এবং PUT এর জন্য ওয়েব সার্ভিস পরীক্ষা করার সময়, আপনাকে ফিডলার নামক আরেকটি টুল ব্যবহার করতে হবে যা সার্ভারে POST এবং PUT রিকোয়েস্ট পাঠানোর জন্য ব্যবহার করা যেতে পারে।