2016-08-13 28 views
5

के साथ React.js क्या मुझे अपने RESTJs ऐप को मेरे REST API के समान एप्लिकेशन में शामिल करना चाहिए?Node.js Rest API

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

वहाँ 2 विकल्प के रूप में मैं इसे देख रहे हैं ...

1) मैं एक बड़े अनुप्रयोग है कि REST API शामिल हैं का निर्माण और अनुप्रयोग प्रतिक्रिया कर सकता है। यह ऐप मोबाइल ऐप से सभी एपीआई कॉल और प्रतिक्रिया/वेब ऐप की सेवा करेगा। यह भी HTML, सीएसएस, आदि उर्फ ​​सभी दृश्यों ..

या

2) मैं दो छोटे क्षुधा बना सकते हैं में काम करेगा। एक अलग (हल्का) नोड सर्वर के साथ दृश्य टेम्पलेट्स के साथ प्रतिक्रिया ऐप की सेवा करेगा। दूसरा ऐप कोई विचार नहीं रखेगा। यह सिर्फ तीनों ऐप्स को सेवा देने के लिए JSON API के रूप में काम करता है।

उत्तर

2

मैं एक आइसोमोर्फिक एप्लिकेशन के साथ जाने की अनुशंसा करता हूं। इस बॉयलर प्लेट को देखें: react-redux-universal-hot-example

आपकी प्रोजेक्ट में, आपके पास दो बंदरगाह चल सकते हैं: एक आपके प्रतिक्रिया विचारों को प्रस्तुत करने के लिए (मैं तेजी से वेब प्रतिपादन प्रदान करने के लिए सर्वर पक्ष प्रतिपादन पसंद करता हूं) और दूसरा एपिस और वेब सॉकेट के लिए।

आपके मोबाइल ऐप्स भी RESTful सेवाओं के लिए एपीआई/डब्ल्यूएस सर्वर का उपयोग कर सकते हैं।

+0

के बारे में "isomorphic" अनुप्रयोगों ... http अधिक जानकारी के लिए एक नज़र इस लेख लें: //nerds.airbnb.com/isomorphic-javascript-future-web-apps/ – jhilliar

0

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

लेकिन कुछ छोटे, दृश्यपटल और बैकएंड अलग आपके पास दो अलग-अलग सर्वर चलाने के लिए और CORS से निपटने के लिए करने के लिए की आवश्यकता होगी के लिए: https://en.wikipedia.org/wiki/Cross-origin_resource_sharing