जर तुम्हाला आठवत असेल तर, REST WebServices HTTP क्वेरींसाठी CRUD (तयार, पुनर्प्राप्त, अपडेट, डिलीट) ऑपरेशन्स मॅप करण्यासाठी HTTP पद्धती वापरते. PUT आणि POST या दोन्ही पद्धती REST वेब सर्व्हिसेसमध्ये कृती तयार आणि अपडेट करण्यासाठी वापरल्या जाऊ शकतात का, PUT आणि POST मध्ये Idempotency हा मुख्य फरक आहे. सारखे दिसते विनंती मिळवा:, HTTP मध्ये PUT क्वेरी देखील पॉवरलेस आहे, याचा अर्थ असा की अनेक वेळा केले तर ते समान परिणाम देईल. REST वेबसेवेच्या संदर्भात PUT आणि POST पद्धतींमध्ये आणखी एक व्यावहारिक फरक आहे नवीन युनिट तयार करण्यासाठी POST सहसा वापरले जाते, आणि PUT बहुतेकदा विद्यमान व्यक्तीला अद्ययावत करण्यासाठी वापरले जाते.

जर तुम्ही एखाद्या विद्यमान व्यक्तीला PUT ने बदलत असाल, तर तुम्हाला हे माहित असले पाहिजे की जर डेटा घटकांचा फक्त एक उपसंच हस्तांतरित केला गेला तर बाकीचे रिक्त किंवा शून्याने बदलले जातील.

आणखी एक सिद्धांत आहे जो म्हणतो की नवीन गोष्टी तयार करण्यासाठी तुम्हाला PUT चा वापर करावा लागेल, जर ग्राहकाने युनिक आयडेंटिफायर दिला असेल, म्हणजे ग्राहक संघटना तयार करण्यासाठी जबाबदार असेल, उदाहरणार्थ. हे एक अद्वितीय URI असेल. त्याचप्रमाणे, नवीन संसाधने तयार करण्यासाठी सर्व्हर जबाबदार असल्यास POST वापरा, उदाहरणार्थ, जर ID URI चा भाग असेल तर सर्व्हरद्वारे स्वयंचलितपणे व्युत्पन्न होईल.

आणि जर तुम्ही RESTful वेब सेवांचे पूर्ण नवशिक्या असाल, तर मी तुम्हाला सुचवतो मास्टर जावा वेब सेवा Spr स्प्रिंग बूटसह RESTful API उडेमीवरील रंगा राव यांचा कोर्स. जावा मध्ये RESTful वेब सेवा कशी विकसित करावी हे शिकण्यासाठी हा एक उत्तम अभ्यासक्रम आहे.

REST WebServices मधील PUT आणि POST मधील काही फरक पाहू.

REST वेबसेवेमध्ये PUT vs POST

मी म्हटल्याप्रमाणे, PUT आणि POST दोन्ही संस्था तयार करण्यासाठी वापरल्या जाऊ शकतात update अद्ययावत करण्यासाठी, POST सहसा तयार करण्यासाठी प्राधान्य दिले जाते, և PUT अस्तित्वात असलेल्या व्यक्तीला अद्यतनित करण्यास प्राधान्य दिले जाते.

उदाहरणार्थ, नवीन ऑर्डर तयार करण्यासाठी आपण वापरणे आवश्यक आहे:

मेल / ऑर्डर:

आणि आपण विद्यमान ऑर्डर रीफ्रेश करण्यासाठी वापरणे आवश्यक आहे

पुट / ऑर्डर / 13892

याचा अर्थ ऑर्डरआयडी 13892 सह ऑर्डर बदलणे

जर तुम्ही अनेक वेळा POST क्वेरी केलीत, तर त्यामुळे बरेच ऑर्डर तयार होतील, परंतु जेव्हा तुम्ही PUT कराल, तेव्हा ते नेहमी समान परिणाम देईल. शक्तीहीन. हे देखील लक्षात ठेवले पाहिजे की “PUT” “POST” आहे असुरक्षित पद्धती. सुरक्षित HTTP पद्धती GET किंवा HEAD सर्व्हर रिसोर्स बदलत नाहीत, तर Idempotent HTTP पद्धती तुम्ही त्यांना कितीही वेळा फोन केला तरीही समान परिणाम देतात.


दोष-सहनशील RESTful API तयार करताना अपयश महत्वाचे आहे. आरईएसटीमध्ये संसाधन रिफ्रेश करण्यासाठी आपण पोस्ट ऐवजी PUT का वापरावे हे आयडेपोटेंसी हे कारण आहे. उदाहरणार्थ, समजा ग्राहक POST द्वारे संसाधन अद्ययावत करू इच्छितो. कारण POST ही एक वैचारिक पद्धत नाही, त्याला अनेक वेळा कॉल केल्याने चुकीचे अपडेट होऊ शकतात.

वास्तविक जगात, तुमची POST क्वेरी संसाधने संपण्याची शक्यता आहे. संसाधन खरोखर अद्ययावत आहे का? सर्व्हरला विनंती पाठवली किंवा क्लायंट प्रतिसाद देतो तेव्हा ब्रेक होतो का?

आम्ही सुरक्षितपणे पुन्हा प्रयत्न करू शकतो, किंवा स्त्रोताचे काय झाले हे आपण प्रथम शोधले पाहिजे? PUT सारख्या idutpotent पद्धतींचा वापर करून, तुम्हाला या प्रश्नाचे उत्तर द्यावे लागणार नाही, परंतु प्रत्यक्षात सर्व्हरकडून प्रतिसाद मिळत नाही तोपर्यंत आम्ही विनंती सुरक्षितपणे पुन्हा पाठवू शकतो.

पहा: HTTP: डेव्हिड गॉर्लेचे अंतिम मार्गदर्शक शक्तीहीन -सुरक्षित पद्धतींबद्दल अधिक जाणून घेण्यासाठी. लक्षात ठेवा की HTTP चे ज्ञान REST मध्ये यशाची गुरुकिल्ली आहे.

REST मध्ये PUT և POST पद्धती कधी वापरायच्या?

आता RESTful WebServices वर कॉल करण्यासाठी PUT և POST पद्धती कधी वापरायच्या याच्या काही व्यावहारिक ज्ञानाची वेळ आली आहे.

1) नवीन संसाधने तयार करण्यासाठी आपण POST वापरणे आवश्यक आहे existing विद्यमान संसाधने अद्यतनित करण्यासाठी PUT.

2) जेव्हा तुम्हाला ऑर्डर, पुस्तक, कर्मचारी यासारख्या ऑब्जेक्टचा “आयडी” माहित असेल तेव्हा PUT वापरा

3) आपल्या संसाधनांच्या URL निर्मितीचे निरीक्षण करण्यासाठी सर्व्हरची आवश्यकता असेल तेव्हा पोस्ट वापरा.

4) उदाहरणे:
PUT / items / 1 update
पोस्ट करा / आयटम तयार करा

आपण अधिक वाचू शकता सराव पुस्तकात REST RESTful API डिझाइन मार्गदर्शक तत्त्वांबद्दल अधिक जाणून घ्या. कधीकधी एखाद्या विषयावरील काही पुस्तके वाचल्याने गोंधळ कमी होण्यास मदत होते.

REST मध्ये POST և PUT पद्धत कधी वापरायची

बीटीडब्ल्यू, आणखी एक सिद्धांत आहे जो म्हणतो: जर आयडी तयार करण्यासाठी क्लायंट जबाबदार असेल संसाधन द्वारे नवीन गोष्टी तयार करा, PUT, उदाहरणार्थ

PUT / वापरकर्ते / जॉन:

येथे जॉन ऑन अद्वितीय आहे the ग्राहकाने दिलेला, हा एक नवीन URI आहे.

त्याचप्रमाणे, जर नवीन संसाधन आयडी तयार करण्यासाठी सर्व्हर जबाबदार असेल तर, उदाहरणार्थ, पोस्ट वापरा

पोस्ट / वापरकर्ते /

आता, POST एक कळ և मूल्य आणेल जे क्लायंट वापरकर्तानाव = john पाठवण्यासाठी वापरते և ID सर्व्हरद्वारे स्वयंचलितपणे व्युत्पन्न होईल.

REST WebService मध्ये Java PUT և POST R मधील फरक

एवढेच आहे REST WebServices मध्ये PUT आणि POST HTTP पद्धतींमधील फरक. तुम्हाला हे लक्षात ठेवावे लागेल की PUT आणि POST दोन्ही सुरक्षित पद्धती नसल्या तरी PUT शक्तीहीन आहे. याचा अर्थ असा की तो समान परिणाम देईल, जरी आपण अनेक वेळा कॉल केला तरीही. सामान्य सल्ला असा आहे की POST चा वापर नवीन वस्तू तयार करण्यासाठी केला जातो आणि PUT चा वापर विद्यमान वस्तू रीफ्रेश करण्यासाठी केला जातो.

जर तुम्ही प्रशिक्षण कोर्स आणि पुस्तकांना कोचिंगचे धडे पसंत करत असाल तर तुम्ही युजीन कोर्सेस देखील पाहू शकता वसंत कोर्ससह हॉलिडे, हे तुम्हाला शिकवेल की REST API कसे डिझाइन करावे the स्प्रिंग फ्रेमवर्कद्वारे स्प्रिंगमध्ये RESTful वेब सेवा विकसित करा. कोर्स खूप तपशीलवार आहे – अपेक्षा करतो की तुम्ही स्प्रिंग फ्रेमवर्कशी परिचित असाल, त्यामुळे इंटरमीडिएट և अनुभवी जावा: वेब डेव्हलपर्ससाठी ते आदर्श आहे.

युजेनकडे त्याच्या अभ्यासक्रमांसाठी अनेक पर्याय आहेत जे विविध अनुभव स्तरावर आणि गरजांसाठी योग्य आहेत, जसे की वसंत inतू मध्ये REST. मूलभूत ज्ञानासाठी मध्यवर्ती वर्ग चांगला आहे शांत झरा सह. मास्टर क्लास अधिक तपशीलांवर आधारित. आपण त्याच्या अभ्यासक्रमाच्या सर्व पर्यायांशी परिचित होऊ शकता.

हा लेख आतापर्यंत वाचल्याबद्दल धन्यवाद. जर तुम्हाला माझे उत्तर आवडले RE PUT vs POST वर REST वर स्पष्टीकरण, कृपया ते तुमच्या मित्र և सहकाऱ्यांसह Twitter वर शेअर करा, मला त्याचे खरोखर कौतुक वाटते.