2009-03-31 16 views
6

मैं जानना चाहता हूं कि मैं अपने वेब एप्लिकेशन में आरईएसटी कैसे कार्यान्वित कर सकता हूं। मैं इस सेवा के आधार पर एक वेब एप्लिकेशन बनाना चाहता हूं, लेकिन मुझे नहीं पता कि इसे कैसे किया जाए। अब, मैं जे 2 ईई और टोमकैट का उपयोग कर रहा हूं। इन प्रौद्योगिकियों के लिए क्या चीजों पर विचार किया जाना चाहिए?किसी वेब एप्लिकेशन में REST को कैसे कार्यान्वित करें?

संपादित करें: क्षमा करें, मेरा मतलब है रीस्टफुल सेवा।

उत्तर

12

REST विशिष्ट इंटरफ़ेस या तकनीक नहीं है, लेकिन एक शैली है। सबसे अच्छा उदाहरण वेब है - आपका ब्राउज़र वेब सर्वर पर एक HTTP अनुरोध भेजता है, जो एक वेब पेज के साथ प्रतिक्रिया करता है।

इस संदर्भ में प्रतिनिधि राज्य स्थानांतरण: प्रतिनिधित्व वेब पेज है, राज्य इसमें निहित जानकारी है। हम एचटीएमएल की बजाय एक्सएमएल की सेवा करने के लिए स्विच करके प्रतिनिधित्व बदल सकते हैं, लेकिन जानकारी वही होगी।

एक पुरानी सेवा में, आप इस शैली का उपयोग डेटा ऑब्जेक्ट्स को आगे भेजने के लिए करते हैं - राज्य को सर्वर से आपके पास स्थानांतरित कर दिया जाता है, और फिर आप फिर से एक नया राज्य भेजते हैं।

तो, एक अर्थ में, टॉमकैट पहले से ही आपके लिए आरईएसटी करेगा, अगर आप अपने सर्वर पेज संसाधनों के रूप में डालते हैं: http://carsales.com/cars/porsche2149 आपकी कार के लिए संसाधन हो सकता है, जिसके लिए आप HTTP पोस्ट या PUT का विवरण बदल सकते हैं यह।

आरईएसटी के हॉलमार्क यूआरआई का उपयोग संसाधनों को इंगित करने के लिए कर रहे हैं, जैसा कि ऊपर जेएसओएन या एक्सएमएल का उपयोग इंटरचेंज माध्यम (हालांकि एएचएएच और अन्य प्रारूपों का उपयोग किया जाता है) के रूप में करते हैं, और संग्रह को हटाने के बारे में बहस करते हैं।

सबसे पहले, अपने संसाधनों के बारे में बताएं, और अपने यूआरआई सिस्टम को फिट करने के लिए व्यवस्थित करें (यूआरएल रीराइटिंग आदि का उपयोग करें)। फिर उस प्रतिनिधित्व का निर्धारण करें जिसे आप उपयोग करना चाहते हैं। अंत में, पासिंग राज्य के प्रतिनिधित्व के साथ निपटने के लिए बैकएंड लिखें, और डेटाबेस अपडेट करें।

+0

धन्यवाद फिल एच, आपका उत्तर यह वास्तव में अच्छा है और पोर्श के साथ उदाहरण के लिए –

+0

+1 है। हालांकि यह अब तक चला गया है, लेकिन फिर भी। – zmilojko

0

यह एक ड्राइव से जवाब का एक सा है, लेकिन अगर तुम यहाँ मदद करने के लिए एक रूपरेखा/api चाहते दो विकल्प हैं:

Restlet

CXF's jax-rs

1

मैं किसी भी नहीं है सीएक्सएफ के जैक्स-आरएस के साथ अनुभव लेकिन रेस्टलेट मेरे लिए अच्छा काम करता है। यह एक सीधा तरीके से रीस्टफुल सेवाओं और ग्राहकों को लागू करने की अनुमति देता है। इससे मुझे डेकीविकि के आरईएसटी सेवा इंटरफेस के खिलाफ प्रोग्रामिंग में बहुत मदद मिली। "रीस्टफुल वेब सर्विस" पर ओ'रेली पुस्तक है जो एक ठीक परिचय प्रदान करती है। इसमें रेस्टलेट पर भी छोटा सा अनुभाग है।

0

हम जेएक्स-आरएस के साथ रेस्टलेट का भी उपयोग कर रहे हैं।

यदि आप जेएक्स-आरएस (रीस्टफुल वेब सेवाओं के लिए जावा एपीआई) का उपयोग कर रहे हैं तो यह document उपयोगी हो सकता है (हालांकि यह जेबॉस रीस्टेसी में विकसित करने के लिए एक संदर्भ मार्गदर्शिका है)।

मैं यह भी अनुशंसा REST test client

0

RESTful Web Services एक किताब है कि आप मदद कर सकता है है। यह रीस्टफुल वेब सेवाओं के पीछे प्रोत्साहन का वर्णन करता है और आपको अपनी सेवा को कैसे डिजाइन करना चाहिए इस पर निर्देश देता है। फिर आप एक ढांचे या सिर्फ सादे servlets का उपयोग कर कार्यान्वयन पर ले जा सकते हैं।

पहले से उल्लिखित कार्यान्वयन विधियों के विकल्प के रूप में, मैं स्प्रिंग एमवीसी जोड़ना चाहता हूं।रीस्टफुल एप्लिकेशन already बनाना संभव है, लेकिन अधिक प्रत्यक्ष समर्थन Spring 3.0

संबंधित मुद्दे

 संबंधित मुद्दे