Express.js क्या है?


439

मैं Node.js में एक शिक्षार्थी हूं ।

  1. Express.js क्या है ?
  2. Node.js के साथ इसका उद्देश्य क्या है?
  3. हमें वास्तव में Express.js की आवश्यकता क्यों है? यह हमारे लिए Node.js के साथ उपयोग करने के लिए कैसे उपयोगी है?
  4. रेडिस क्या है ? क्या यह Express.js के साथ आता है?

28
समुदाय-विकी उत्तर पर स्क्रॉल करें (जिसमें +50 इनाम है)। मैंने पाया कि चिह्नित उत्तर की तुलना में अधिक उपयोगी है।
शिशिर गुप्ता

जवाबों:


266

यह सरल बनाने खत्म हो गया है, लेकिन Express.js है Node.js क्या रूबी ऑन रेल्स या सिनात्रा है रूबी

एक्सप्रेस 3.x सर्वर साइड पर अपने वेब एप्लिकेशन को MVC आर्किटेक्चर में व्यवस्थित करने में मदद करने के लिए एक हल्के-वजन वाला वेब एप्लिकेशन फ्रेमवर्क है। आप अपनी टेम्प्लेटिंग लैंग्वेज (जैसे EJS , जेड , और Dust.js ) के लिए विभिन्न विकल्पों का उपयोग कर सकते हैं ।

इसके बाद आप की तरह एक डेटाबेस का उपयोग कर सकते MongoDB साथ नेवला (मॉडलिंग के लिए) अपने Node.js आवेदन के लिए एक बैकेंड प्रदान करने के लिए। Express.js मूल रूप से अनुरोधों और विचारों को संभालने के लिए, मार्गों से, सब कुछ प्रबंधित करने में आपकी सहायता करता है।

Redis एक कुंजी / मूल्य की दुकान है - आमतौर पर Node.js अनुप्रयोगों में सत्र और कैशिंग के लिए उपयोग किया जाता है। आप इसके साथ बहुत कुछ कर सकते हैं, लेकिन यही मैं इसके लिए उपयोग कर रहा हूं। मैं अधिक जटिल संबंधों के लिए MongoDB का उपयोग करता हूं, जैसे लाइन-आइटम <-> ऑर्डर <-> उपयोगकर्ता संबंध। ऐसे मॉड्यूल हैं (सबसे विशेष रूप से कनेक्ट-रेडिस) जो Express.js के साथ काम करेंगे। आपको रेडिस स्थापित करने की आवश्यकता होगी अपने सर्वर पर डेटाबेस ।

यहां एक्सप्रेस 3.x गाइड: https://expressjs.com/en/3x/api.html का लिंक दिया गया है


20
एक्सप्रेस रेल के बजाय पापात्रा अधिक पसंद है।
आधा

11
एक्सप्रेस को विशेष रूप से साइनट्रा से प्रेरित किया गया था। संभवतः इसकी सबसे महत्वपूर्ण विशेषता रूटिंग है; यह कनेक्ट द्वारा प्रदान किए गए सभी मिडलवेयर को भी उपलब्ध करता है (उस बिंदु तक जहां सभी लेकिन सबसे विशिष्ट एप्लिकेशन जिन्हें कनेक्ट के मिडलवेयर की आवश्यकता होती है, एक्सप्रेस का उपयोग करेंगे)।
आठबहमान

मैं कहूंगा कि वास्तव में जटिल रिश्तों के लिए रेडिस आदर्श है।
प्लस-

EJS लिंक वर्तमान में मृत है।
डेविड स्पेक्टर

मैं वास्तव में यह नहीं समझता कि एमवीसी एक्सप्रेस से कैसे संबंधित है। अगर मैं सही ढंग से याद करूँ तो एक्सप्रेस का कोई मॉडल नहीं है और न ही कोई विचार है। यह एक मिडलवेयर-आधारित ढांचा है, न कि एमवीसी-फ्रेमवर्क। कृपया इसे समझाएं।
घर्मन

382

1) एक्सप्रेस.जेएस क्या है?

Express.js एक Node.js ढांचा है। यह अब तक का सबसे लोकप्रिय ढांचा है (एनपीएम पर सबसे अधिक अभिनीत)।

यहां छवि विवरण दर्ज करें

यह विन्यास और कनेक्ट मिडलवेयर की बारीक सादगी के आसपास बनाया गया है। कुछ लोग एक्सप्रेस .js की तुलना रूबी सिनात्रा बनाम भारी और राय रूबी रेल्स पर करते हैं

2) Node.js के साथ इसका उद्देश्य क्या है?

आपको बार-बार एक ही कोड को दोहराने की जरूरत नहीं है। Node.js एक निम्न-स्तरीय I / O तंत्र है जिसमें एक HTTP मॉड्यूल है। तुम सिर्फ एक HTTP मॉड्यूल, पेलोड, कुकीज़ को पार्स की तरह बहुत काम, सत्र (स्मृति में या में भंडारण का उपयोग करते हैं Redis ,) के आधार पर सही मार्ग पैटर्न का चयन नियमित अभिव्यक्ति होगा है फिर से लागू किया जाना है। Express.js के साथ, यह सिर्फ आपके उपयोग के लिए है।

3) हमें वास्तव में Express.js की आवश्यकता क्यों है? यह हमारे लिए Node.js के साथ उपयोग करने के लिए कैसे उपयोगी है?

पहला उत्तर आपके प्रश्न का उत्तर देना चाहिए। यदि नहीं, तो सादे Node.js में एक छोटा REST API सर्वर (केवल कोर मॉड्यूल का उपयोग करके) लिखने की कोशिश करें और फिर Express.js में। उत्तरार्द्ध आपको 5-10x कम समय और कोड की लाइनें ले जाएगा।

रेडिस क्या है? क्या यह Express.js के साथ आता है?

रेडिस एक तेजी से लगातार की-वैल्यू स्टोरेज है। आप वैकल्पिक रूप से Express.js के साथ सत्रों के भंडारण के लिए इसका उपयोग कर सकते हैं, लेकिन आपको इसकी आवश्यकता नहीं है। डिफ़ॉल्ट रूप से, Express.js में सत्रों के लिए मेमोरी स्टोरेज है। Redis का उपयोग कतारबद्ध नौकरियों के लिए भी किया जा सकता है, उदाहरण के लिए, ईमेल नौकरियों।

की जाँच करें Express.js साथ REST API सर्वर पर मेरी ट्यूटोरियल

एमवीसी लेकिन खुद से नहीं

Express.js अपने आप में एक मॉडल-व्यू-कंट्रोलर फ्रेमवर्क नहीं है। आप इस तरह के MongoDB, Sequelize (के लिए नेवला के रूप में अपनी खुद की वस्तु-संबंधपरक मानचित्रण पुस्तकालयों लाने की जरूरत है http://sequelizejs.com ) SQL डेटाबेस के लिए, Waterline ( https://github.com/balderdashy/waterline में कई डेटाबेस के लिए) ढेर।

वैकल्पिक

अन्य Node.js चौखटे पर विचार करने के लिए ( https://www.quora.com/Node-js/Which-Node-js-framework-is-best-for-building-a-Restful-API ):

अद्यतन: मैंने इस संसाधन को एक साथ रखा है जो लोगों को Node.js चौखटे चुनने में सहायता करता है: http://nodeframework.com

UPDATE2: हमने कुछ GitHub आँकड़ों को nfframework.com पर जोड़ा है इसलिए अब आप एक पृष्ठ पर 30+ चौखटे के लिए सामाजिक प्रमाण (GitHub तारे) के स्तर की तुलना कर सकते हैं।

यहां छवि विवरण दर्ज करें

पूर्ण हो चुकी है:

बस बाकी एपीआई:

रूबी ऑन रेल्स जैसे:

इस तरह की यात्रा:

अन्य:

मध्यस्थ:

स्थैतिक साइट जनरेटर:


क्या यह कहना सही होगा कि - Express.js एक Node.js मॉड्यूल है (जिसे आपने अपनी 1 पंक्ति में रूपरेखा के रूप में संबोधित किया है)। मैंने नोडज शब्द को moduleकाफी बार सुना है । एक फ्रेमवर्क के अंदर फ्रेमवर्क मेरे लिए थोड़ी खबर है।
आरबीटी

हां, जैसा कि व्यवहार में है, एक्सप्रेस एक नोड पैकेज मैनेजर (एनपीएम) मॉड्यूल (उर्फ एक पैकेज) है, क्योंकि यह एनपीएम से अन्य मॉड्यूल की तरह एक एप्लिकेशन में जोड़ा जाता है। (यदि आप एक नोड एक्सप्रेस एप्लिकेशन के स्रोत फ़ोल्डर को देखते हैं, तो आपको एक फ़ोल्डर दिखाई देगा जिसे नोड_मॉड्यूल्स कहा जाता है। इसमें उप-फ़ोल्डर होगा जिसे एक्सप्रेस कहा जाता है।) लेकिन यह npm से अधिकांश अन्य मॉड्यूल की तुलना में कहीं अधिक उपयोगी है क्योंकि इसमें ए है। सामान्य कार्यों के लिए एपीआई के साथ प्रभावी रूप से ऐप कोडर प्रदान करने वाले निर्भर मॉड्यूल का भार। एक ढांचे के अंदर रूपरेखा? एक सर्वर-निर्माण ढांचे के लिए लागू करने योग्य फ्रेमवर्क की तरह अधिक।
ट्रंक

15
  1. Express.js क्या है?

Express.js एक Node.js वेब एप्लिकेशन सर्वर फ्रेमवर्क है, जिसे सिंगल-पेज, मल्टी-पेज और हाइब्रिड वेब एप्लिकेशन के निर्माण के लिए डिज़ाइन किया गया है। यह नोड के लिए वास्तविक तथ्य मानक सर्वर ढांचा है।

एक्सप्रेस वे पर बने ढांचे।

एक्सप्रेस पर कई लोकप्रिय Node.js ढांचे बनाए गए हैं:

लूपबैक: अत्यधिक एंड-एक्सटेंसिव, ओपन-सोर्स Node.js फ्रेमवर्क जो डायनेमिक एंड-टू-एंड REST APIs को जल्दी से बनाने के लिए है।

पाल: व्यावहारिक, उत्पादन-तैयार ऐप्स के निर्माण के लिए Node.js के लिए MVC फ्रेमवर्क।

क्रैकन: सुरक्षित और स्केलेबल परत जो संरचना और सम्मेलन प्रदान करके एक्सप्रेस का विस्तार करती है।

MEAN: वेब अनुप्रयोग विकास को सरल और गति प्रदान करने वाला फुलस्टैक जावास्क्रिप्ट ढांचा तैयार करता है।

  1. Node.js के साथ इसका उद्देश्य क्या है?
  2. हमें वास्तव में Express.js की आवश्यकता क्यों है? यह हमारे लिए Node.js के साथ उपयोग करने के लिए कैसे उपयोगी है?

एक्सप्रेस डेड सिंपल रूटिंग और कनेक्ट मिडिलवेयर के लिए सपोर्ट जोड़ता है, जिससे कई एक्सटेंशन और उपयोगी सुविधाएं मिल सकती हैं।

उदाहरण के लिए,

  • सत्र चाहते हैं? यह वहाँ है
  • POST बॉडी / क्वेरी स्ट्रिंग पार्सिंग चाहते हैं? यह वहाँ है
  • जेड, मूंछें, ejs, आदि के माध्यम से आसान अस्थायी चाहते हैं? यह वहाँ है
  • सुशोभित त्रुटि को संभालना चाहते हैं जो पूरे सर्वर को क्रैश नहीं करेगा?

10
  1. Express.js Node.js के लिए एक मॉड्यूलर वेब फ्रेमवर्क है
  2. इसका उपयोग वेब एप्लिकेशन और सेवाओं के आसान निर्माण के लिए किया जाता है
  3. Express.js विकास को सरल बनाता है और सुरक्षित, मॉड्यूलर और तेज़ अनुप्रयोगों को लिखना आसान बनाता है। आप सादे पुराने Node.js में वह सब कर सकते हैं, लेकिन कुछ कीड़े (और इच्छाशक्ति) सतह, सुरक्षा चिंताओं सहित (उदाहरण के लिए, एक स्ट्रिंग को ठीक से बच नहीं सकते हैं)।
  4. Redis एक इन-मेमोरी डेटाबेस सिस्टम है जो अपने तेज़ प्रदर्शन के लिए जाना जाता है। नहीं, लेकिन आप redis क्लाइंट का उपयोग करके Express.js के साथ इसका उपयोग कर सकते हैं

मैं इससे ज्यादा संक्षिप्त नहीं हो सकता। आपकी अन्य सभी आवश्यकताओं और जानकारी के लिए, Google आपका मित्र है।


3

एक्सप्रेसजेएस , नोडेजेएस के शीर्ष पर नंगे हड्डियों वाला वेब एप्लीकेशन फ्रेमवर्क है।

इसका उपयोग WebApps, RESTFUL API आदि को जल्दी से बनाने के लिए किया जा सकता है।

जेड, ईजेएस जैसे कई टेम्पलेट इंजन का समर्थन करता है।

एक्सप्रेसजेएस केवल एक न्यूनतम कार्यक्षमता को मुख्य विशेषताओं के रूप में रखता है और जैसे कि कोई भी ओआरएम या डीबी डिफ़ॉल्ट रूप से समर्थित नहीं हैं। लेकिन थोड़े प्रयास के साथ एक्सप्रेसजेज ऐप्स को विभिन्न डेटाबेस के साथ एकीकृत किया जा सकता है।

ExpressJS एप्लिकेशन बनाने पर आरंभ करने के लिए एक गाइड के लिए, निम्नलिखित लिंक देखें:

ExpressJS परिचयात्मक ट्यूटोरियल


3

एक्सप्रेस नोड के लिए एक मॉड्यूल ढांचा है जिसे आप उन अनुप्रयोगों के लिए उपयोग कर सकते हैं जो सर्वर / एस पर आधारित हैं जो ग्राहकों से किसी भी इनपुट / कनेक्शन अनुरोध के लिए "सुनेंगे"। जब आप इसे नोड में उपयोग करते हैं, तो यह केवल यह कह रहा है कि आप अपने नोड मॉड्यूल से अंतर्निहित एक्सप्रेस फ़ाइल के उपयोग का अनुरोध कर रहे हैं।

एक्सप्रेस बहुत सारे वेब ऐप्स का "बैकबोन" है, जो कि NodeJS में अपना बैक एंड है। मैं जो जानता हूं, उसकी प्राथमिक संपत्ति एक रूटिंग सिस्टम की भविष्यवाणी है जो 2 मेजबानों के बीच "इंटरैक्शन" की सेवाओं को संभालती है। इसके लिए बहुत सारे विकल्प हैं, जैसे कि पाल।


2

Express.js नोड के लिए उपयोग किया जाने वाला एक फ्रेमवर्क है और नोड नोड के लिए वेब एप्लिकेशन के रूप में इसका सबसे अधिक उपयोग किया जाता है।

यहां एक वीडियो का लिंक दिया गया है कि कैसे एक्सप्रेस नोड के साथ जल्दी से स्थापित करने के लिए https://www.youtube.com/watch?v=QEcuSSnqvck


पूर्ण शुरुआती के लिए बहुत बढ़िया स्पष्टीकरण!
अंकित पांडेय

0

TJ Holowaychuk द्वारा बनाई गई Express.js और अब समुदाय द्वारा प्रबंधित। यह नोड में सबसे लोकप्रिय रूपरेखाओं में से एक है। एक्सप्रेस का उपयोग विभिन्न उत्पादों जैसे वेब एप्लिकेशन या रेस्टफुल एपीआई को विकसित करने के लिए भी किया जा सकता है। अधिक जानकारी के लिए कृपया आधिकारिक वेबसाइट expressjs.com पर पढ़ें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.