2012-04-23 17 views
5

मैंने दो रेल ऐप्स बनाए हैं जिन्हें संवाद करने और एक-दूसरे के बीच फ़ाइलों को भेजने की आवश्यकता है। उदाहरण के लिए एक रेल ऐप अन्य ऐप्स के डेटाबेस में एक टेबल देखने का अनुरोध भेजेगा। फिर दूसरा ऐप उस टेबल के जेसन को प्रस्तुत करेगा और उसे वापस भेज देगा। मैं एक ऐप को अपनी सार्वजनिक निर्देशिका में संग्रहीत टेक्स्ट फ़ाइल को अन्य ऐप की सार्वजनिक निर्देशिका में भी भेजना चाहूंगा।रेल ऐप्स के बीच संचार

मैंने कभी ऐसा कुछ नहीं किया है, इसलिए मुझे यह भी नहीं पता कि कहां से शुरू करना है। किसी भी सहायता की सराहना की जाएगी। धन्यवाद!

उत्तर

2

एक शुरुआती बिंदु के रूप में, ActiveResource पर देखें।

Railscast

docs

+2

सक्रिय संसाधन कम या ज्यादा बहिष्कृत है। रेल 4.0 से शुरू होने पर, यह अब रेल का मानक हिस्सा नहीं होगा। और जब तक कोई इसे बनाए रखने के लिए कदम उठाता है, तो यह अच्छा होगा ... –

+0

आह, यह बहुत बुरा है। कम से कम विचार पर्याप्त सभ्य है, इसलिए उम्मीद है कि यह एक प्रारंभिक बिंदु प्रदान करता है।मुख्य रूप से, आप चाहते हैं कि एक रेल ऐप दुनिया के लिए एक विश्वसनीय इंटरफ़ेस प्रदान करे, और फिर दूसरा ऐप उस इंटरफ़ेस का उपयोग करने के लिए होता है जिसकी आवश्यकता होती है। – jdl

+0

2 वां लिंक 404 देता है। – Alan

5

आप आवश्यकता लगभग सभी वेब रेल पर ध्यान दिए बिना एप्लिकेशन के लिए, एक दूसरे के सबसे आधुनिक वेब क्षुधा के लिए आवश्यक है के साथ संचार आम है। लेकिन एक छोटी सी समझ है कि आपको पकड़ने की आवश्यकता है,

वेबसाइटों को सीधे एक दूसरे के आंतरिक डेटा (जैसे तालिकाओं) तक नहीं पहुंचना चाहिए, (भले ही वे एक ही भाषा (इस मामले में रेल) एक ही डेवलपर द्वारा),

वह जगह है जहां वेब-सेवाएं खेलने के लिए आती हैं, इसलिए आपको वेब सेवाओं के माध्यम से अपना डेटा बेनकाब करना चाहिए ताकि न केवल रेल एप्लिकेशन इसका उपभोग कर सकें, बल्कि कोई भी ऐप जो उपभोग करने के बारे में जानता है एक वेब सेवा लाभ मिलेगा।

वापस रेल के साथ अपने प्रश्न का आ रहा है, रेल बॉक्स से बाहर बाकी वेब सेवाओं का समर्थन करता है, तो कुछ वेब सेवाओं, रेल

HTH

0

साथ बाकी वेब सेवाओं के बारे में googling कर हाल ही में रेल संस्करणों में, यह एपीआई केवल अनुप्रयोगों को विकसित करना आसान है। रेल कोर मास्टर में, इन ऐप्स के लिए संक्षिप्त रूप से एक विशेष एप्लिकेशन प्रकार भी था (जब तक यह फिर से नहीं मिला)। लेकिन यह अभी भी एक प्लगइन के रूप में उपलब्ध है और शायद एक दिन वास्तव में रेल कोर का हिस्सा बन जाता है। अधिक जानकारी के लिए http://blog.wyeworks.com/2012/4/20/rails-for-api-applications-rails-api-released देखें।

वास्तव में बैकएंड सेवा के एपीआई को विकसित और बनाए रखने के लिए और सुनिश्चित करें कि बैकएंड और फ्रंटेंड दोनों संसाधनों की समान समझ रखते हैं, तो आप ROAR का उपयोग कर सकते हैं जो महान एपीआई बनाने का एक शानदार तरीका है।

आम तौर पर, आपको अपने बैकएंड एप्लिकेशन को एपीआई के साथ पूरी तरह से परिभाषित करना चाहिए। चालाक होने और कुछ डिज़ाइन चरणों को छोड़ने के लिए आपको केवल लंबे समय तक सिरदर्द लाएगा ...

+0

क्या आप अच्छे एपीआई डिज़ाइन के बारे में जानने के लिए संसाधनों की अनुशंसा कर सकते हैं? – danieldekay

+0

इस दस्तावेज़ को एपीजी से आज़माएं: http://info.apigee.com/Portals/62317/docs/web%20api.pdf – bryanbraun

0

Morpheus देखें। यह आपको विश्वसनीय सेवाओं को बनाने और क्लाइंट में परिचित ActiveRecord वाक्यविन्यास का उपयोग करने देता है।

1

संदेश कतार प्रणाली जैसे कि RabbitMQ का उपयोग "मेलर" ऐप और मुख्य "हब" एप्लिकेशन जैसे विभिन्न ऐप्स के बीच आंतरिक रूप से संवाद करने के लिए किया जा सकता है।

वैकल्पिक रूप से, आप एक ऐप में "कतार" पर रेडिस स्टिक चीजों जैसे किसी साझा कनेक्शन का उपयोग कर सकते हैं और उन्हें दूसरे से प्रोसेसिंग के लिए पढ़ सकते हैं।

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