मेरा यह परिदृश्य है:
- एक उपयोगकर्ता ETag के लिए एक GET अनुरोध
/projects/1
करता है और प्राप्त करता है । - उपयोगकर्ता चरण # 1 से ETag के साथ एक PUT अनुरोध करता है
/projects/1
। - उपयोगकर्ता
/projects/1
चरण # 1 से ETag के साथ एक और PUT अनुरोध करता है ।
आम तौर पर, दूसरा PUT अनुरोध 412 प्रतिक्रिया प्राप्त करेगा, क्योंकि ETag अब बासी है - पहला PUT अनुरोध संसाधन को संशोधित करता है, इसलिए ETag अब मेल नहीं खाता है।
लेकिन क्या होगा यदि दो PUT अनुरोध एक ही समय (या बिल्कुल एक के बाद एक) भेजे जाएं? पहले PUT अनुरोध में PUT # 2 आने से पहले संसाधन को संसाधित करने और अद्यतन करने का समय नहीं है, जो PUT # 2 को PUT # 1 को अधिलेखित करने का कारण बनता है। आशावादी ताला लगाने की पूरी बात यह है कि ऐसा न हो ...