আপনার ভাষা, " মনে হচ্ছে খুব অপব্যয়কর ...", আমার কাছে অকাল অপটিমাইজেশনের প্রয়াসকে ইঙ্গিত করে। যদি না এটি প্রদর্শিত না হয় যে অবজেক্টগুলির সম্পূর্ণ প্রতিনিধিত্ব পাঠানো একটি বড় পারফরম্যান্স হিট (আমরা ব্যবহারকারীদের কাছে> 150 মিম হিসাবে গ্রহণযোগ্য নয়) তখন নতুন অ-মানক এপিআই আচরণ তৈরি করার চেষ্টা করার কোনও মানে নেই। মনে রাখবেন, এত সহজে যত সহজে API ব্যবহার করা যায় তত সহজ।
মুছে ফেলার জন্য নিম্নলিখিতটি প্রেরণ করুন কারণ মুছে ফেলার আগে সার্ভারকে বস্তুর অবস্থা সম্পর্কে কিছু জানতে হবে না।
DELETE /emails
POSTDATA: [{id:1},{id:2}]
পরবর্তী চিন্তাটি হ'ল যদি কোনও অ্যাপ্লিকেশনটি বস্তুর বাল্ক আপডেট সম্পর্কিত পারফরম্যান্স সম্পর্কিত সমস্যাগুলি নিয়ে চলেছে তবে প্রতিটি বস্তুকে একাধিক বস্তুতে ভাঙ্গার বিষয়ে বিবেচনা দেওয়া উচিত। এইভাবে জেএসএন পে-লোড হ'ল আকারের একটি ভগ্নাংশ।
উদাহরণ হিসাবে দুটি পৃথক ইমেলের "পড়ুন" এবং "সংরক্ষণাগারভুক্ত" স্ট্যাটাসগুলি আপডেট করার প্রতিক্রিয়া পাঠানোর সময় আপনাকে নিম্নলিখিতগুলি পাঠাতে হবে:
PUT /emails
POSTDATA: [
{
id:1,
to:"someone@bratwurst.com",
from:"someguy@frommyville.com",
subject:"Try this recipe!",
text:"1LB Pork Sausage, 1 Onion, 1T Black Pepper, 1t Salt, 1t Mustard Powder",
read:true,
archived:true,
importance:2,
labels:["Someone","Mustard"]
},
{
id:2,
to:"someone@bratwurst.com",
from:"someguy@frommyville.com",
subject:"Try this recipe (With Fix)",
text:"1LB Pork Sausage, 1 Onion, 1T Black Pepper, 1t Salt, 1T Mustard Powder, 1t Garlic Powder",
read:true,
archived:false,
importance:1,
labels:["Someone","Mustard"]
}
]
আমি ইমেলের পরিবর্তিত উপাদানগুলি (পড়ুন, সংরক্ষণাগারভুক্ত, গুরুত্ব, লেবেলগুলি) আলাদা আলাদা অবজেক্টে ভাগ করে নেব অন্য হিসাবে (থেকে, বিষয়, পাঠ্য) কখনই আপডেট হবে না।
PUT /email-statuses
POSTDATA: [
{id:15,read:true,archived:true,importance:2,labels:["Someone","Mustard"]},
{id:27,read:true,archived:false,importance:1,labels:["Someone","Mustard"]}
]
গ্রহণ করার জন্য আরেকটি পদ্ধতি হ'ল প্যাচএইচএইচ ব্যবহারের সুবিধা অর্জন করা। আপনি কোন বৈশিষ্ট্য আপডেট করার ইচ্ছে করছেন এবং অন্য সকলকে উপেক্ষা করা উচিত তা স্পষ্টভাবে নির্দেশ করতে।
PATCH /emails
POSTDATA: [
{
id:1,
read:true,
archived:true
},
{
id:2,
read:true,
archived:false
}
]
লোকেদের বক্তব্য: PATCH বাস্তবায়িত হওয়া উচিত: এ্যাকশন (সিআরইউডি), পাথ (ইউআরএল) এবং মান পরিবর্তন সহ এমন একটি অ্যারে সরবরাহ করে by এটি একটি স্ট্যান্ডার্ড বাস্তবায়ন হিসাবে বিবেচিত হতে পারে তবে আপনি যদি কোনও REST এপিআইয়ের সম্পূর্ণতা দেখেন তবে এটি একটি স্বজ্ঞাত নয় one এছাড়াও, উপরের বাস্তবায়নটি কীভাবে গিটহাব প্যাচচ বাস্তবায়ন করেছে ।
এটির সংক্ষেপে, ব্যাচের ক্রিয়া সহ RESTful নীতিগুলি মেনে চলা সম্ভব এবং এখনও গ্রহণযোগ্য পারফরম্যান্স থাকতে পারে।