একটি আরএসটি ওয়েব পরিষেবাদিতে ক্রিয়াকলাপ করতে আমার কোন HTTP ক্রিয়া ব্যবহার করা উচিত?
কোনও আরইএসটি পরিষেবার বিশদ বিবেচনা করার সময়, এই তাত্পর্যপূর্ণ বিবেচনাটি প্রায়শই দরকারী: আপনি কীভাবে কোনও ওয়েব সাইট দিয়ে এটি প্রয়োগ করবেন?
এইচটিএমএল কেবলমাত্র জিইটি এবং পোষ্ট অনুরোধগুলির বর্ণনা দিতে পারে। সুতরাং আমরা সেখানে অনুসন্ধান করতে শুরু করতে পারেন।
Is GET
উপযুক্ত? এই প্রশ্নের উত্তর দিতে, আমাদের ক্লায়েন্ট এবং মধ্যবর্তী উপাদানগুলির জন্য অনুমোদিত যে অনুমানগুলি সম্পর্কে ভাবতে হবে GET
। এর শব্দার্থবিদ্যা GET
হয় নিরাপদ
ক্লায়েন্ট কোনও টার্গেট রিসোর্সে নিরাপদ পদ্ধতি প্রয়োগের ফলে উত্স সার্ভারে কোনও রাজ্য পরিবর্তন করার অনুরোধ করে না এবং প্রত্যাশা করে না। তেমনিভাবে, নিরাপদ পদ্ধতির যুক্তিসঙ্গত ব্যবহারের ফলে উত্স সার্ভারের কোনও ক্ষতি, সম্পত্তির ক্ষতি বা অস্বাভাবিক বোঝা হওয়ার আশঙ্কা করা হয় না।
এর অর্থ নিহিত, ক্লায়েন্ট এবং মধ্যবর্তী উপাদানগুলির নিজস্ব উদ্বেগ মেটাতে প্রয়োজনীয় হিসাবে ঘন ঘন একটি জিইটি অনুরোধ জানার বিচক্ষণতা রয়েছে। মাকড়সাগুলি তাদের সূচকগুলি আপডেট করতে নির্বিচারে সংস্থান করতে পারে। ক্যাচগুলি প্রাক-আনতে পারে। অবিশ্বস্ত নেটওয়ার্কে, সর্বনিম্ন-এক-প্রতিক্রিয়া নিশ্চিত করতে হারিয়ে যাওয়া বার্তাগুলি যতবার প্রয়োজন তত ঘন ঘন পুনরায় চেষ্টা করা যেতে পারে।
এটি কনফিগারেশন, ক্যাশে ইত্যাদি পুনরায় লোড করতে ব্যবহৃত হবে
যদি এইগুলি ব্যয়বহুল জিনিস হয় তবে আপনি চান না ক্লায়েন্টরা তাদের নিজস্ব বিবেচনার ভিত্তিতে এই অনুরোধগুলি জারি করুন।
POST
অন্যদিকে, কার্যকরভাবে নিয়ন্ত্রণহীন - এটি জেনেরিক ক্লায়েন্টগুলি যে মঞ্জুরি দেয় তা প্রচুর পরিমাণে হ্রাস করে। আপনি অনুমানমূলক পোষ্ট অনুরোধগুলি তৈরি করার উপাদানগুলি পান না কারণ তারা এটি করতে দোষযুক্ত হবেন - স্ট্যান্ডার্ডের কিছুই এটি ঠিক আছে বলে জানায় না।
PUT
, PATCH
, DELETE
... এই তুলনায় আরো নির্দিষ্ট শব্দার্থবিদ্যা সঙ্গে অনিরাপদ পদ্ধতি POST
; তারা উপযুক্ত কিনা তা আপনার রিসোর্স মডেলের উপর নির্ভর করে।
মনে রাখার জন্য একটি গুরুত্বপূর্ণ ধারণা হ'ল এইচটিটিপি পদ্ধতিগুলি ডকুমেন্ট ডোমেনের অন্তর্ভুক্ত ( জিম ওয়েবারের ২০১১ আলাপ দেখুন ), আপনি যে প্রভাবগুলি বর্ণনা করছেন তা সম্ভবত নথির ডোমেনের অংশ নয়, তবে ডকুমেন্টগুলি পরিবর্তিত হওয়ার পরিবর্তে পার্শ্ব প্রতিক্রিয়াগুলি ডেকে আনা হবে । কাজটি করার জন্য আপনি কীভাবে আপনার দস্তাবেজগুলি সংগঠিত করেন সে ক্ষেত্রে এটি আপনাকে প্রচুর স্বাধীনতা দেয়।