যদিও HTTP 1.1 স্পেসটি বার্তা সংস্থাগুলি মুছে দেওয়ার অনুরোধগুলিতে মঞ্জুরি দেয় বলে মনে হয় , এটি মনে হয় যে এটির জন্য কোনও নির্ধারিত শব্দার্থবিজ্ঞান না থাকায় সার্ভারগুলি এটিকে উপেক্ষা করবে।
4.3 বার্তা বডি
কোনও সার্ভার কোনও অনুরোধে একটি বার্তা-বডি পড়তে এবং ফরোয়ার্ড করা উচিত; যদি অনুরোধ পদ্ধতিতে কোনও সত্তা-দেহের জন্য সংজ্ঞায়িত শব্দার্থকে অন্তর্ভুক্ত না করা হয়, তবে অনুরোধটি পরিচালনা করার সময় বার্তা-বডিটি উপেক্ষা করা উচিত।
আমি ইতিমধ্যে এসও এবং এর বাইরেও এ সম্পর্কিত বেশ কয়েকটি সম্পর্কিত আলোচনা পর্যালোচনা করেছি, যেমন:
- এইচটিটিপি মুছে ফেলার অনুরোধের জন্য কি কোনও সত্তা সংস্থা অনুমোদিত?
- এইচটিটিপি অনুরোধ পদ্ধতিগুলির পেডলোড load
- অনুরোধ বডি সহ HTTP পান
বেশিরভাগ আলোচনার সাথে একমত মনে হয় যে একটি ডিলিটে একটি বার্তা সংস্থা সরবরাহ করার অনুমতি দেওয়া হতে পারে তবে সাধারণত প্রস্তাবিত হয় না।
আরও, আমি বিভিন্ন HTTP ক্লায়েন্ট লাইব্রেরিতে একটি প্রবণতা লক্ষ্য করেছি যেখানে এই লাইব্রেরিগুলি মোছার জন্য অনুরোধ সংস্থাগুলি মোছার জন্য আরও বেশি কিছু বর্ধিত হতে পারে বলে মনে হয়। বেশিরভাগ গ্রন্থাগারগুলি বাধ্যতামূলক বলে মনে হয় যদিও মাঝে মাঝে সামান্য কিছুটা প্রতিরোধের সাথে with
আমার ব্যবহারের ক্ষেত্রে ডিলিটের জন্য কিছু প্রয়োজনীয় মেটাডেটা যুক্ত করার জন্য কল করা হয় (উদাহরণস্বরূপ, মোছার জন্য "কারণ", মোছার জন্য প্রয়োজনীয় কিছু মেটাডেটা)। আমি নিম্নলিখিত বিকল্পগুলি বিবেচনা করেছি, যার মধ্যে কোনওটিই পুরোপুরি উপযুক্ত বলে মনে হয় না এবং এইচটিটিপি চশমা এবং / অথবা REST সেরা অনুশীলনের সাথে ইনলাইন থাকে:
- বার্তা শরীরে - অনুমানটি ইঙ্গিত করে যে ডিলিটের বার্তাগুলির কোনও শব্দার্থক মূল্য নেই; এইচটিটিপি ক্লায়েন্টদের দ্বারা পুরোপুরি সমর্থিত নয়; স্ট্যান্ডার্ড অনুশীলন না
- কাস্টম এইচটিটিপি শিরোনাম - কাস্টম শিরোনামের প্রয়োজন সাধারণত স্ট্যান্ডার্ড অনুশীলনের বিরুদ্ধে ; এগুলি ব্যবহার করা আমার বাকি এপিআইয়ের সাথে সঙ্গতিপূর্ণ নয়, যার মধ্যে কাস্টম শিরোনামের প্রয়োজন নেই; আরও, খারাপ কাস্টম শিরোলেখের মানগুলি (সম্ভবত পুরোপুরি একটি পৃথক প্রশ্ন) নির্দেশ করতে কোনও ভাল HTTP প্রতিক্রিয়া উপলব্ধ নেই
- স্ট্যান্ডার্ড এইচটিটিপি শিরোনাম - কোনও মানক শিরোনাম উপযুক্ত নয়
- ক্যোয়ারী প্যারামিটার - ক্যোয়ারী প্যারামগুলি যুক্ত করা হলে অনুরোধ-ইউআরআই মোছার পরিবর্তিত হয়; স্ট্যান্ডার্ড অনুশীলনের বিরুদ্ধে
- পোষ্ট পদ্ধতি - (উদাঃ
POST /resourceToDelete { deletemetadata }
) পোস্ট মুছে ফেলার জন্য কোনও অর্থবোধক বিকল্প নয়; পোস্টটি আসলে পছন্দসই বিপরীত ক্রিয়াকে প্রতিনিধিত্ব করে (অর্থাত্ পোস্টটি রিসোর্স সাবর্ডিনেটস তৈরি করে; তবে আমার রিসোর্সটি মুছতে হবে) - একাধিক পদ্ধতি - মোছার অনুরোধটিকে দুটি ক্রিয়ায় বিভক্ত করা (উদাহরণস্বরূপ পুট মুছে ফেলুন মেটাডেটা, তারপরে মুছে ফেলুন) পারমাণবিক ক্রিয়াকলাপকে দুটি ভাগে বিভক্ত করে, সম্ভাব্যভাবে একটি অসামঞ্জস্য অবস্থা ছেড়ে যায়। মোছার কারণ (এবং অন্যান্য সম্পর্কিত মেটাডেটা) নিজেই উত্সের উপস্থাপনার অংশ নয়।
আমার প্রথম পছন্দটি হ'ল বার্তাটির প্রধান অংশটি ব্যবহার করতে হবে, কাস্টম এইচটিটিপি শিরোনামের পরে দ্বিতীয়; তবে, যেমন নির্দেশিত হয়েছে, এই পদ্ধতির কিছু ডাউনসাইড রয়েছে।
ডিএলটিইটি অনুরোধে প্রয়োজনীয় মেটাডেটা অন্তর্ভুক্ত করার জন্য কি আরইএসটি / এইচটিটিপি স্ট্যান্ডার্ডের সাথে কোনও প্রস্তাব বা সর্বোত্তম অনুশীলন রয়েছে? অন্য কোন বিকল্প আছে যা আমি বিবেচনা করি নি?
Jersey
জন্য শরীরকে অনুমতি দেয় নাdelete
।