উদাহরণস্বরূপ আমার সত্তা রয়েছে: ক্লায়েন্ট, রিপোর্ট। ক্লায়েন্টের অনেকগুলি প্রতিবেদন থাকতে পারে এবং আমি মনে করি একটি একক প্রতিবেদন পরিচালনার জন্য শেষ পয়েন্টটি এভাবে বাসাতে হবে:
/clients/{client_id}/reports/{report_id}
এক ক্লায়েন্টের সমস্ত প্রতিবেদনের ক্ষেত্রে এনপয়েন্টটি আশা করা হচ্ছে:
/clients/{client_id}/reports
তবে কীভাবে সমস্ত ক্লায়েন্টের সমস্ত প্রতিবেদনগুলি এপিআইকে ধারাবাহিকভাবে এবং ভালভাবে ডিজাইনে রাখার জন্য শেষ পয়েন্ট দেখতে হবে।
আমার পন্থা:
- (আমি এটি কিছু গুগল এপিতে দেখেছি) এর পরিবর্তে "-" ব্যবহার করুন এবং "সমস্ত" হিসাবে পার্স করুন:
/clients/-/reports
এটি শেষ পয়েন্ট ফর্ম্যাটটিকে একই রাখে তবে কিছুটা অযৌক্তিক দেখায়, এমন কোনও আরএফসি খুঁজে পাবে না যা এইভাবে প্রস্তাব দেয়।
- সমস্ত প্রতিবেদনের জন্য একটি পৃথক শেষ পয়েন্ট করুন:
/reports
তবে ক্লায়েন্টের প্রতিবেদন পেতে এটি এখনও রয়েছে:
/clients/{client_id}/reports
- রিফ্যাক্টর "ক্লায়েন্ট" পিতামাতাকে নয়, কেবল একটি ফিল্টার প্যারামিটার তৈরি করার জন্য সমাপ্তি:
/reports?client={client_id}
- এক ক্লায়েন্টের রিপোর্ট
/reports
- সমস্ত ক্লায়েন্টের রিপোর্ট
নির্দিষ্ট ক্লায়েন্টের জন্য প্রতিবেদন পোস্ট করার জন্য একটি নতুন এন্ডপয়েন্ট যুক্ত করার ক্ষেত্রে এটি কুরুচিপূর্ণ দেখাতে পারে, কারণ এটি URL- এ একটি প্যারামিটারের সাথে পোস্ট-অনুরোধ হবে।
ধারণা আছে কি অন্য কোন পরামর্শ আছে?