Node.js ट्यूटोरियल - शुरुआती के लिए एक पूर्ण गाइड



यह Node.js ट्यूटोरियल मूल संरचना, काम करने और Node.js. के विभिन्न मॉड्यूल के बारे में बात करेगा। यह Node.js और Express.js के व्यावहारिक कार्यान्वयन को भी प्रदर्शित करेगा।

यदि आपने कभी Node.js के बारे में सुना है तो आप जान सकते हैं कि यह जावास्क्रिप्ट का सबसे प्रमुख और शक्तिशाली ढांचा है। जारी होने के बाद से, इसने आईटी बाजार में अपनी पकड़ बनाए रखना जारी रखा है। नए और जीवंत की शुरूआत के साथ भी पसंद , , उल्का आदि, Node.js की लोकप्रियता कभी खत्म नहीं होती। सोच रहा हूँ क्यों? खैर, इस Node.js ट्यूटोरियल की मदद से, मैं आपको इसमें पूरी जानकारी दूंगा। तो, Node.js. के साथ प्यार में पड़ने के लिए तैयार हो जाओ

इस Node.js ट्यूटोरियल में, मैं नीचे दिए गए विषयों पर चर्चा करूंगा:





Node.js क्या है?

Node.js एक शक्तिशाली ढांचा है जिसे विकसित किया गया है क्रोम का V8 जावास्क्रिप्ट इंजन जावास्क्रिप्ट को सीधे देशी मशीन कोड में संकलित करता है। यह सर्वर-साइड वेब एप्लिकेशन बनाने के लिए उपयोग किया जाने वाला एक हल्का ढांचा है और सामान्य सर्वर-साइड फ़ंक्शंस को पेश करने के लिए जावास्क्रिप्ट एपीआई का विस्तार करता है। इसका उपयोग आम तौर पर बड़े पैमाने पर अनुप्रयोग विकास के लिए किया जाता है, विशेष रूप से वीडियो स्ट्रीमिंग साइटों, एकल पृष्ठ एप्लिकेशन और अन्य वेब एप्लिकेशन के लिए। Node.js बनाता है एक घटना-चालित, गैर-अवरुद्ध I / O मॉडल का उपयोग जो डेटा-गहन वास्तविक समय अनुप्रयोगों के लिए एक सही पिक बनाता है।

किसी भी अन्य प्रोग्रामिंग भाषाओं की तरह, नोड.जेएस पैकेज और मॉड्यूल का उपयोग करता है। ये वे पुस्तकालय हैं जिनमें विभिन्न कार्य होते हैं और npm (नोड पैकेज मैनेजर) से हमारे कोड में आयात किए जाते हैं और कार्यक्रमों में उपयोग किए जाते हैं। Node.js को परिभाषित करने वाली कुछ प्रमुख विशेषताएं नीचे सूचीबद्ध हैं:



Node.js की विशेषताएं

  1. खुला स्त्रोत
    Node.js एक खुला स्रोत ढांचा MIT लाइसेंस है जो एक विशाल समुदाय द्वारा समर्थित है। इसका समुदाय बहुत सक्रिय है जिन्होंने Node.js अनुप्रयोगों में नई क्षमताओं को जोड़ने में योगदान दिया है।
  2. सरल और तेज
    चूंकि Node.js Google Chrome के V8 जावास्क्रिप्ट इंजन पर बनाया गया है, इसलिए इसके पुस्तकालय तेज कोड निष्पादन में सक्षम हैं।
  3. अतुल्यकालिक
    Node.js के सभी पुस्तकालय अतुल्यकालिक हैं, जिसका अर्थ है कि Node.js आधारित सर्वर कभी भी प्रतिक्रिया वापस भेजने और अगले API पर जाने के लिए API की प्रतीक्षा नहीं करते हैं।
  4. उच्च स्केलेबिलिटी
    इवेंट तंत्र के कारण, Node.js अत्यधिक स्केलेबल है और सर्वर को गैर-अवरोधक प्रतिक्रिया में सहायता करता है।
  5. सिंगल-थ्रेडेड
    इवेंट लूपिंग की मदद से, Node.js सिंगल-थ्रेडेड मॉडल का पालन करने में सक्षम है। यह एकल प्रोग्राम को कई अनुरोधों को संभालने की अनुमति देता है।
  6. कोई बफरिंग नहीं
    Node.js अनुप्रयोगों की एक प्रमुख विशेषता यह है कि यह कभी भी किसी भी डेटा को बफ़र नहीं करता है।
  7. क्रॉस-प्लेटफ़ॉर्म
    Node.js को विंडोज, मैक और लिनक्स जैसे विभिन्न प्लेटफार्मों पर आसानी से बनाया और तैनात किया जा सकता है।

आइए अब और आगे बढ़ें और देखें कि ब्राउज़र पर वास्तविक कोड कैसे तैनात किया जाए। लेकिन इससे पहले, आपको अपने सिस्टम में डाउनलोड और इंस्टॉल करना होगा। पूरा जानने के लिए आप मेरे अन्य लेख का संदर्भ ले सकते हैं Node.js स्थापना प्रक्रिया

तो अब, इस Node.js ट्यूटोरियल में आगे बढ़ते हैं, जहाँ मैं Node.js के सबसे महत्वपूर्ण घटक यानी npm के बारे में बात करूँगा।

एनपीएम (नोड पैकेज मैनेजर)

NPM का मतलब है Node Package Manager जो नाम से पता चलता है कि Node.js संकुल / मॉड्यूल के लिए एक पैकेज प्रबंधक है। नोड संस्करण 0.6.0 से। इसके बाद, नोड इंस्टॉलेशन में npm को डिफ़ॉल्ट के रूप में जोड़ा गया है। यह आपको स्पष्ट रूप से npm को स्थापित करने की परेशानी से बचाता है।



एनपीएम मूल रूप से दो तरीकों से मदद करता है:

शुरुआती के लिए Microsoft sql सर्वर ट्यूटोरियल
  1. नोड.जेएस पैकेज / मॉड्यूल के लिए ऑनलाइन रिपॉजिटरी प्रदान करता है और होस्ट करता है जिसे हमारी परियोजनाओं में आसानी से डाउनलोड और उपयोग किया जा सकता है। आप उन्हें यहां पा सकते हैं: npmjs.com
  2. विभिन्न Node.js संकुल को स्थापित करने के लिए कमांड लाइन उपयोगिता प्रदान करता है, Node.js संस्करणों और संकुल की निर्भरता का प्रबंधन करता है।

लेकिन अब, आप सोच रहे होंगे कि ये मॉड्यूल क्या हैं और वे Node.js अनुप्रयोगों के निर्माण में हमारी मदद कैसे करते हैं। खैर, इस Node.js ट्यूटोरियल के अगले भाग में, मैं आपको Node.js मॉड्यूल की पूरी जानकारी दूंगा।

नोड.जेएस मॉड्यूल

Node.js में मॉड्यूल विभिन्न कार्यक्षमताओं का प्रतिनिधित्व करता है जिन्हें एकल या एकाधिक JS फ़ाइलों में बांधा जाता है। इन मॉड्यूलों का एक अनूठा संदर्भ है, इस प्रकार, वे कभी भी अन्य मॉड्यूलों के दायरे को बाधित या प्रदूषित नहीं करते हैं।

ये मॉड्यूल कोड पुन: प्रयोज्य को सक्षम करते हैं और उपयोग में आसानी को बढ़ाते हैं। Node.js मूल रूप से तीन प्रकार के मॉड्यूल प्रदान करता है:

  1. अंतर्भाग मापदंड
  2. स्थानीय मॉड्यूल
  3. तृतीय-पक्ष मॉड्यूल

कोर मॉड्यूल

चूँकि Node.js बहुत अधिक है हल्का रूपरेखा, मुख्य मॉड्यूल पूर्ण न्यूनतम कार्यात्मकताओं को बंडल करते हैं। ये मॉड्यूल आम तौर पर लोड हो जाते हैं जब नोड प्रक्रिया इसकी निष्पादन शुरू करती है। आपको बस इतना करना है कि इन कोर मॉड्यूल को अपने कोड में उपयोग करने के लिए आयात करें।

नीचे मैंने कुछ महत्वपूर्ण कोर मॉड्यूल सूचीबद्ध किए हैं।

कोर मॉड्यूल विवरण
एचटीटीपी Node.js HTTP सर्वर बनाने के लिए आवश्यक कक्षाएं, विधियाँ और ईवेंट शामिल हैं
url नोड में URL रिज़ॉल्यूशन और पार्सिंग के तरीके शामिल हैं
क्वेरी स्ट्रिंग इसमें नोड की क्वेरी स्ट्रिंग से निपटने के तरीके शामिल हैं
पथ फ़ाइल पथ से निपटने के लिए विधियाँ शामिल हैं
fs फ़ाइल I / O के साथ काम करने के लिए कक्षाएं, विधियाँ और ईवेंट शामिल हैं
उपयोगी उपयोगिता कार्य शामिल हैं जो प्रोग्रामर के लिए उपयोगी हो सकते हैं

आप नीचे दिए गए कोड का उपयोग करके अपने कोर मॉड्यूल को लोड कर सकते हैं:

var मॉड्यूल = की आवश्यकता होती है ('mod_name')

अब देखते हैं, 'स्थानीय मॉड्यूल' क्या हैं।

स्थानीय मॉड्यूल

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

ये मॉड्यूल कोर मॉड्यूल के समान तरीके से लोड किए गए हैं। आइए आपको दिखाते हैं, कैसे एक मूल उदाहरण का उपयोग करते हुए।

अपने कस्टम / स्थानीय मॉड्यूल। जेएस फ़ाइल बनाएँ

var detail = {name: function (नाम) {कंसोल.लॉग ('नाम:' + नाम)}, डोमेन: फंक्शन (डोमेन) {कंसोल.लॉग ('डोमेन:' + डोमेन)}} मॉड्यूल.exports = डिटेल

अपनी मुख्य एप्लिकेशन फ़ाइल में अपनी मॉड्यूल फ़ाइल शामिल करें।

var myLogModule = की आवश्यकता होती है ('./ Local_module.js') myLogModule.name ('Edureka') myLogModule.domain ('शिक्षा')

अब आप नीचे दिए गए कमांड का उपयोग करके इन फ़ाइलों को निष्पादित कर सकते हैं:

नोड अनुप्रयोग। js

अब मैं आपको दिखाता हूं कि बाहरी मॉड्यूल क्या हैं।

बाहरी मॉड्यूल

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

विश्व स्तर पर लोड हो रहा है 3 पार्टी मॉड्यूल:

npm स्थापित - जी

अपनी मुख्य एप्लिकेशन फ़ाइल में अपनी मॉड्यूल फ़ाइल शामिल करें:

npm स्थापित - save

JSON फ़ाइल

package.json फ़ाइल Node.js में पूरे एप्लिकेशन का दिल है। यह मूल रूप से प्रकट फ़ाइल है जिसमें प्रोजेक्ट का मेटाडेटा शामिल है। इस प्रकार, इस फाइल के साथ समझना और काम करना एक सफल नोड परियोजना के विकास के लिए बहुत महत्वपूर्ण हो जाता है।

Package.json फ़ाइल में आमतौर पर एप्लिकेशन के मेटाडेटा होते हैं, जिसे आगे दो श्रेणियों में वर्गीकृत किया गया है:

  1. मेटाडेटा गुणों की पहचान: इसमें प्रोजेक्ट का नाम, वर्तमान मॉड्यूल संस्करण, लाइसेंस, परियोजना का लेखक, परियोजना विवरण आदि जैसे गुण शामिल हैं।
  1. सीधे फाइल करने के लिए लेखन: आप सीधे आवश्यक जानकारी को package.json फ़ाइल में लिख सकते हैं और इसे अपनी परियोजना में शामिल कर सकते हैं।

अब तक आप नोड जेएस एप्लिकेशन के विभिन्न घटकों से पहले ही परिचित हो चुके हैं। इस Node.js ट्यूटोरियल के अगले भाग में, मैं कुछ Node Js बेसिक्स साझा करूंगा ताकि हम हाथों से शुरुआत कर सकें।

Node.js मूल बातें

चूंकि Node.js एक जावास्क्रिप्ट ढांचा है, इसलिए यह जावास्क्रिप्ट सिंटैक्स का उपयोग करता है। यदि आप विस्तार से जावास्क्रिप्ट सीखना चाहते हैं, तो आप इसका उल्लेख कर सकते हैं । अभी के लिए, मैं आपको कुछ Node.js मूल बातें जैसे ब्रश करूंगा:

जानकारी का प्रकार

किसी भी अन्य प्रोग्रामिंग भाषा की तरह, Node.js में विभिन्न डेटाटाइप होते हैं, जिन्हें आगे चलकर आदिम और गैर-आदिम डेटाैटिप्स में वर्गीकृत किया जाता है।

आदिम डेटा प्रकार हैं:

  1. स्ट्रिंग
  2. नंबर
  3. बूलियन
  4. अमान्य
  5. अनिर्धारित

गैर-आदिम डेटा प्रकार हैं:

  1. वस्तु
  2. तारीख
  3. अर्रे

चर

वैरिएबल वे इकाइयाँ हैं जो मान रखती हैं जो एक कार्यक्रम के दौरान भिन्न हो सकते हैं। Node.js में एक वैरिएबल बनाने के लिए, आपको एक आरक्षित कीवर्ड संस्करण का उपयोग करना होगा। आपको एक डेटा प्रकार निर्दिष्ट करने की आवश्यकता नहीं है, क्योंकि कंपाइलर स्वचालित रूप से इसे ले जाएगा।

वाक्य - विन्यास:

var varName = मान

संचालक

Node.js नीचे के ऑपरेटरों का समर्थन करता है:

संचालक प्रकार संचालक
अंकगणित +, -, /, *,%, ++, -
असाइनमेंट =, + =, - =, * =, / =,% =
सशर्त =?
तुलना ==, ===; =! =; ==,>, = =,<, <=,
तार्किक &&,,,!
बिटवाइज &, |, ^, ~,<>, >>>

कार्य

Node.js में फ़ंक्शंस कोड का एक ब्लॉक है जिसका एक नाम है और एक विशेष कार्य को प्राप्त करने के लिए लिखा गया है। इसे बनाने के लिए आपको कीवर्ड फ़ंक्शन का उपयोग करना होगा। एक फ़ंक्शन आम तौर पर एक दो-चरण प्रक्रिया है। पहला समारोह को परिभाषित कर रहा है और दूसरा इसे लागू कर रहा है। नीचे एक फ़ंक्शन बनाने और लागू करने का वाक्यविन्यास है:

जावा में एक नंबर रिवर्स करने के लिए कार्यक्रम

उदाहरण:

// एक फंक्शन फंक्शन display_Name (FirstName, lastName) {अलर्ट ('हैलो' + firstName + '' + lastName)} को परिभाषित करना // फंक्शन display_Name ('पार्क', 'Jimin') को इंक्लोज करना

वस्तुएं

एक ऑब्जेक्ट एक गैर-आदिम डेटा प्रकार है जो गुणों और विधियों के संदर्भ में कई मूल्यों को पकड़ सकता है। वर्ग की कोई अवधारणा नहीं है, क्योंकि नोड ऑब्जेक्ट्स स्टैंडअलोन एंटिटी हैं। आप दो तरीकों से एक वस्तु बना सकते हैं:

  1. ऑब्जेक्ट शाब्दिक का उपयोग करना
  2. ऑब्जेक्ट कंस्ट्रक्टर का उपयोग करना

उदाहरण:

// गुण और विधि var कर्मचारी के साथ वस्तु = {// गुण प्रथम नाम: 'मिन्हो', अंतिम नाम: 'चोई', आयु: 35, वेतन: 50000, // विधि getFullName: function () {{this.firstname + 'लौटें + this.lastName}}

फाइल सिस्टम

भौतिक फ़ाइल सिस्टम तक पहुँचने के लिए, Node.js का उपयोग करता है fs मॉड्यूल जो मूल रूप से सभी अतुल्यकालिक और तुल्यकालिक फ़ाइल I / O संचालन का ध्यान रखता है। यह मॉड्यूल नीचे दिए गए आदेश का उपयोग करके आयात किया गया है:

var fs = आवश्यकता ('fs')

फ़ाइल सिस्टम मॉड्यूल के लिए कुछ सामान्य उपयोग हैं:

  • फ़ाइलें पढ़ें
    1. fs.readFile ()
var http = की आवश्यकता है ('http') var fs = आवश्यकता ('fs') http.createServer (फंक्शन (req, res) {fs.readFile ('script.txt', function (इरेट, डेटा) {Res .writeHead ( 200, {'सामग्री-प्रकार': 'पाठ / html'}) res.write (डेटा) res.end () ()))) सुनो। (8080)
  • फाइलें बनाएं
    1. परिशिष्ट ()
    2. खुला हुआ()
    3. लिखना ()
  • फ़ाइलें अद्यतन करें
    1. fs.appendFile ()
    2. fs.writeFile ()
  • फाइलों को नष्ट
    1. fs.unlink ()
  • फ़ाइलों का नाम बदलें
    1. fs.rename ()

इसलिए, इन आदेशों के साथ, आप अपनी फ़ाइलों पर सभी आवश्यक कार्य कर सकते हैं। आइए अब इस Node.js ट्यूटोरियल के साथ आगे बढ़ते हैं और देखते हैं कि इवेंट क्या हैं और उन्हें Node.j में कैसे संभाला जाता है

आयोजन

जैसा कि मैंने पहले ही उल्लेख किया है, Node.js अनुप्रयोग एकल थ्रेडेड और ईवेंट-चालित हैं। Node.js समसामयिकता का समर्थन करता है क्योंकि यह ईवेंट-चालित है, और इस प्रकार ईवेंट और कॉलबैक जैसी अवधारणाओं का उपयोग करता है। Async फ़ंक्शन कॉल पूरे अनुप्रयोग में संगामिति बनाए रखने में Node.js की मदद करती है।

असल में, Node.js एप्लिकेशन में, एक मुख्य लूप है जो प्रतीक्षा करता है और घटनाओं के लिए सुनता है, और किसी भी घटना को पूरा करने के बाद, यह तुरंत कॉलबैक फ़ंक्शन शुरू करता है।

नीचे दिए गए चित्र में दर्शाया गया है कि कैसे घटनाओं को Node.js. में चलाया जाता है

थ्रेड मॉडल - Node.js ट्यूटोरियल - एडुरका

एक बात जो आपको यहाँ ध्यान देनी चाहिए, वह यह है कि भले ही ईवेंट्स कॉलबैक फ़ंक्शंस के समान हों, लेकिन अंतर उनकी कार्यक्षमता में निहित है। जब एक एसिंक्रोनस फ़ंक्शन अपना परिणाम लौटाता है तो कॉलबैक को दूसरी ओर ईवेंट ईवेंट पर लगाया जाता है जो पूरी तरह से पर्यवेक्षक पैटर्न पर काम करता है। और Node.js में, घटनाओं को सुनने वाले तरीकों को पर्यवेक्षक कहा जाता है। क्षण, एक घटना शुरू हो जाती है, इसका श्रोता कार्य स्वचालित रूप से निष्पादित करना शुरू कर देता है। ईवेंट मॉड्यूल और EventEmitter वर्ग कई इन-बिल्ट ईवेंट प्रदान करते हैं जो ईवेंट श्रोताओं के साथ ईवेंट को बांधने के लिए उपयोग किए जाते हैं। नीचे मैंने उसके लिए वाक्य रचना नीचे लिखा है।

एक इवेंट श्रोता के लिए बाध्यकारी घटना

// इम्पोर्ट इवेंट मॉड्यूल var my_Events = आवश्यकता ('इवेंट') // एक EventEmitter ऑब्जेक्ट बनाएं var my_EveEmitter = new my_Events.EventEmitter ()

इवेंट के लिए बाइंडिंग इवेंट हैंडलर

// बाइंडिंग इवेंट और इवेंट हैंडलर my_EveEmitter.on ('eventName', eventHandler)

एक घटना फायरिंग

// आग एक घटना my_EveEmitter.emit ('eventName')

अब इस Node.js ईवेंट अनुभाग में जिन चीज़ों की मैंने चर्चा की है, उन्हें लागू करने का प्रयास करें।नीचे दिए गए कोड में Node.js. में इवेंट निष्पादन का एक सरल प्रतिनिधित्व दिखाया गया है

var emitter = आवश्यकता ('इवेंट्स')। EventEmitter फ़ंक्शन iterateProcessor (num) {var emt = new emitter () setTimeout (फ़ंक्शन () {के लिए (var i = 1 i & lt = num i ++] 'emt.emit ('पहले से अतिरिक्त') , i) कंसोल.लॉग ('प्रोसेसिंग Iteration:' + i) emt.emit ('AfterProcess', i)},}, 5000) वापसी emt} var it = iterateProcessor (5) it.on ('बिफोरप्रोसेस', फ़ंक्शन () जानकारी) {कंसोल.लॉग ('' जानकारी के लिए प्रक्रिया शुरू करना)}) it.on ('आफ्टरप्रोसेस', फंक्शन (जानकारी) {कंसोल.लॉग ('जानकारी के लिए फिनिशिंग प्रोसेसिंग)

इस Node.js ट्यूटोरियल के अगले भाग में, मैं आपको HTTP मॉड्यूल नामक Node.js के सबसे महत्वपूर्ण मॉड्यूल में से एक पर जानकारी देता हूँ।

HTTP मॉड्यूल

आमतौर पर, Node.js का उपयोग सर्वर-आधारित अनुप्रयोगों को विकसित करने के लिए किया जाता है। लेकिन मॉड्यूल का उपयोग करके, आप आसानी से वेब सर्वर बना सकते हैं जो क्लाइंट अनुरोधों का जवाब दे सकता है। इस प्रकार यह वेब मॉड्यूल के लिए भी संदर्भित है और HTTP जैसे मॉड्यूल प्रदान करता है और सर्वर अनुरोधों को संसाधित करने में Node.js की सुविधा देता है।

आप बस नीचे दिए गए कोड को लिखकर इस मॉड्यूल को अपने Node.js एप्लिकेशन में आसानी से शामिल कर सकते हैं:

var http = की आवश्यकता है ('http')

नीचे मैंने एक कोड लिखा है, जो दिखाता है कि कैसे एक वेब सर्वर Node.js. में विकसित किया गया है

// कॉलिंग http लाइब्रेरी var http = आवश्यकता ('http') var url = आवश्यकता ('url') // सर्वर वर्जन सर्वर बनाना = http.createServer (फंक्शन (req, Res) {// सेटिंग कंटेंट हेडर res.writeHead (फ्लोरिडा) 200, ('सामग्री-प्रकार', 'पाठ / html')) var q = url.parse (req.url, true) .query var txt = q.year + '' + q.month // प्रतिक्रिया के लिए स्ट्रिंग भेजें res.end (txt)}) // 8082 सर्वर सुनकर पोर्ट सर्वर के रूप में असाइन किया जा रहा है। सूची (8082)

इस Node.js ट्यूटोरियल के अगले भाग में, मैं Express.js के बारे में बात करूंगा जो कि सर्वर-साइड वेब डेवलपमेंट के लिए बहुत अधिक उपयोग किया जाता है।

एक्सप्रेस .js

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

Express.js को Node.js के मिडलवेयर मॉड्यूल पर विकसित किया जाता है जुडिये । कनेक्ट मॉड्यूल आगे का उपयोग करता है एचटीटीपी Node.js. के साथ संवाद करने के लिए मॉड्यूल इस प्रकार, यदि आप कनेक्ट आधारित मिडलवेयर मॉड्यूल में से किसी के साथ काम कर रहे हैं, तो आप आसानी से Express.js के साथ एकीकृत कर सकते हैं।

यही नहीं, Express.js के प्रमुख लाभों में से कुछ हैं:

  • वेब एप्लिकेशन डेवलपमेंट को तेज बनाता है
  • सिंगल-पेज, मल्टी-पेज और हाइब्रिड प्रकार के मोबाइल और वेब एप्लिकेशन के निर्माण में मदद करता है
  • एक्सप्रेस दो अस्थायी इंजन प्रदान करता है, जैसे जेड और ईजेएस
  • एक्सप्रेस मॉडल-व्यू-कंट्रोलर (MVC) आर्किटेक्चर का अनुसरण करता है
  • MongoDB, Redis, MySQL जैसे डेटाबेस के साथ एकीकरण बनाता है
  • मिडिलवेयर से निपटने में त्रुटि को परिभाषित करता है
  • आवेदन के लिए विन्यास और अनुकूलन को आसान बनाता है।

इन सभी विशेषताओं के साथ, एक्सप्रेस MEAN स्टैक में बैकएंड भाग की जिम्मेदारी लेता है। मीन स्टैक एक ओपन-सोर्स जावास्क्रिप्ट सॉफ्टवेयर स्टैक है जिसका उपयोग डायनामिक वेबसाइट और वेब एप्लिकेशन के निर्माण के लिए किया जाता है। यहाँ, MEAN के लिए खड़ा है OngoDB, है xpress.js, सेवा मेरे ngularJS, और एन ode.js.

अब यह समझने के लिए एक सरल उदाहरण देखें कि एक्सप्रेस .js हमारे काम को आसान बनाने के लिए Node.js के साथ कैसे काम करता है। लेकिन इससे पहले कि आप Express.js के साथ काम करना शुरू करें, आपको इसे अपने सिस्टम में इंस्टॉल करना होगा।

जावा में मिनट ढेर लागू करें

विश्व स्तर पर Express.js स्थापित करने के लिए आप नीचे दिए गए आदेश का उपयोग कर सकते हैं:

npm स्थापित -g एक्सप्रेस

या, यदि आप इसे अपने प्रोजेक्ट फ़ोल्डर में स्थानीय रूप से स्थापित करना चाहते हैं, तो आपको नीचे दिए गए कमांड को निष्पादित करने की आवश्यकता है:

npm स्थापित एक्सप्रेस - save

चूंकि हम पूरी तैयारी के साथ किए गए हैं, अब सीधे व्यावहारिक कार्यान्वयन में कूदते हैं। यहाँ, मैं Node.js और Express.js का उपयोग करके एक साधारण उपयोगकर्ता प्रमाणीकरण अनुप्रयोग दिखा रहा हूँ।

Express.js के साथ Node.js ट्यूटोरियल स्टेप बाय स्टेप एप्लीकेशन डेवलपमेंट

इसके लिए, हमें फ़ाइलों की आवश्यकता होगी:

  • package.json
  • script.js
  • विचार
    • index.jade
    • login.jade
    • safe.jade
    • unauthorized.jade
    • स्वागत है। जेड
  • परिवाद
    • मार्गों .js

तो, चलिए शुरू करते हैं package.json

{name लेखक ’: ka एडुर्का’,: नाम ’: D एक्सप्रेस_डेमो’, 'विवरण ’:। एक्सप्रेस विद नोड.जेएस’,' संस्करण ’: .0 0.0.0’, 'स्क्रिप्ट ’: {' प्रारंभ’: नोड script.js '},' इंजन ': {' नोड ':' ~ 0.4.12 '},' निर्भरता ': {' कनेक्ट-फ्लैश ':' ^ 0.1.1 ',' कुकी-पार्सर ':' ^ 1.4 .3 ',' एक्सप्रेस ':' ^ 3.21.2 ',' जेड ':' ^ 0.20.3 ',' रीक-फ्लैश ':' 0.0.3 '},' डिवेडपेंडेंसीज ': {}

अगला, आपको बनाने की आवश्यकता है script.js

var express = आवश्यकता ('एक्सप्रेस') var http = आवश्यकता ('http') var port = 8999 var app = express () const फ़्लैश = आवश्यकता ('कनेक्ट-फ्लैश') var कुकीपर्स = आवश्यकता ('कुकी-पार्सर') var सर्वर = http.createServer (ऐप) फंक्शन checkAuth (req, res, next) {कंसोल.लॉग ('checkAuth' + req.url) // लॉग इन नहीं (req.url =) में लॉग इन न करने वालों के लिए सुरक्षित / सुरक्षित नहीं है। == '/ सुरक्षित' && ((! req.session ||! req.session.authenticated)) {res.render ('अनधिकृत', {स्थिति: 403}) वापसी} अगला ()} app .use (फ़्लैश) ) app.use (cookieParser ()) app.use (express.session ({गुप्त: 'उदाहरण'})) app.use (express.bodyParser ()) app.use (checkAuth) app.use (app .router) app.set ('व्यू इंजन', 'जेड') app.set ('व्यू ऑप्शंस', {लेआउट: झूठी} की आवश्यकता है ('./ lib / मार्गों.js') (ऐप) app.listen (पोर्ट) कंसोल .log ('नोड% s पर सुन रहा है', पोर्ट)

अब, दृश्य नाम का एक फ़ोल्डर बनाएं, जिसके तहत आप जेड फाइलें जोड़ेंगे जो विभिन्न पृष्ठ दृश्यों के लिए जिम्मेदार होंगे। पहला दृश्य फ़ाइल जिसे आपको बनाने की आवश्यकता है index.jade

!!! 5 html (lang = 'en') शीर्षक शीर्षक उपयोगकर्ता प्रमाणीकरण उदाहरण शरीर h1 केंद्र प्रमाणीकरण डेमो एक्सप्रेस h3 का उपयोग करके h4 ul li पर नेविगेट करें: a (href = '/ safe') सुरक्षित सामग्री li: a (href = / welcome ') स्वागत पृष्ठ li: a (href = '/ logout') लॉगआउट करें

अब, बनाएँ login.jade फ़ाइल।

!!! 5 html (lang = 'en') हेड शीर्षक एक्सप्रेस प्रमाणीकरण उदाहरण शरीर h1 केंद्र साइन-इन इस एक्सप्रेस प्रमाणीकरण उदाहरण केंद्र p उपयोग उपयोगकर्ता उपयोगकर्ता नाम के लिए और उत्तीर्ण करना पासवर्ड के लिए। फॉर्म (विधि = 'पद') पी लेबल (= 'उपयोगकर्ता नाम') ईमेल पता इनपुट (प्रकार = 'पाठ', नाम = 'उपयोगकर्ता नाम', वर्ग = 'प्रपत्र-नियंत्रण', आईडी = 'उदाहरणInputPassword1', प्लेसहोल्डर = ' ईमेल ', शैली =' चौड़ाई: 400px ') पी केंद्र लेबल (=' पासवर्ड 'के लिए) पासवर्ड इनपुट (प्रकार =' पासवर्ड ', नाम =' पासवर्ड ', वर्ग =' प्रपत्र-नियंत्रण ', आईडी =' उदाहरणInputPassword1 '), प्लेसहोल्डर = 'पासवर्ड', शैली = 'चौड़ाई: 400px') p केंद्र सबमिट करें - प्रत्येक संदेश फ़्लैश h4 में (शैली = 'रंग: लाल') # {संदेश}

अगला कदम बनाने के लिए है स्वागत है। जेड

!!! 5 html (lang = 'en') शीर्षक शीर्षक उपयोगकर्ता प्रमाणीकरण उदाहरण शरीर h1 केंद्र आपका स्वागत है Edureka ट्यूटोरियल!

इसके बाद, बनाएं safe.jade फ़ाइल।

!!! 5 html (lang = 'en') हेड शीर्षक एक्सप्रेस प्रमाणीकरण उदाहरण शरीर h1 केंद्र हाय, सुरक्षित उपयोगकर्ता। p ul li पर नेविगेट करें: a (href = '/ सिक्योर') सिक्योर कंटेंट li: a (href = '/ welcome') वेलकम पेज li: a (href = '/ logout') लॉगआउट करें

अब, बनाएँ unauthorized.jade फ़ाइल।

!!! 5 html (lang = 'en') शीर्षक शीर्षक उपयोगकर्ता प्रमाणीकरण उदाहरण शरीर h1 केंद्र अनधिकृत p आप इस पृष्ठ को देखने के लिए अनधिकृत हैं। पी कृपया ' जारी रखने के लिए

अब, आपको एक फ़ोल्डर बनाने और उसे नाम देने की आवश्यकता है परिवाद । अब, एक बनाएँ मार्ग .js फ़ाइल जो सभी पृष्ठों को मैप करेगी।

var उपयोग = आवश्यकता ('उपयोग') मॉड्यूल .exports = function (app) {app.get ('/', function (req, res, next) {res.render ('index')}) app.get (' / स्वागत ', फ़ंक्शन (req, Res, अगला) {res.render (' स्वागत ')}) app.get (' / सुरक्षित ', फ़ंक्शन (req, Res, अगला) {res.render (' सुरक्षित ')} ) app.get ('/ लॉगिन', फ़ंक्शन (req, Res, next) {res.render ('लॉगिन', {फ़्लैश: req.flash ())})) app.post ('/ लॉगिन', फ़ंक्शन () req, res, next) {// आप यहाँ एक डेटाबेस लुक-अप या कुछ अधिक स्केलेबल करना पसंद कर सकते हैं यदि (req.body.username && req.body.username === 'उपयोगकर्ता' && req.body.password && req.body.password === 'पास') {req.session.authenticated = true res.redirect ('/ safe')} और {req.flash ('त्रुटि', 'उपयोगकर्ता नाम और पासवर्ड गलत हैं)' Res। रीडायरेक्ट ('/ लॉगिन')}}) app.get ('/ लॉगआउट', फ़ंक्शन (req, res, next) {हटाएं req.session.authenticated res.redirect ('/'))})

अब यदि आप इस कोड को अपने दम पर निष्पादित करना चाहते हैं तो आप इसे यहाँ से डाउनलोड कर सकते हैं: Node.js ट्यूटोरियल पीडीएफ

इसके साथ, हम इस Node.js ट्यूटोरियल के अंत में आते हैं। मुझे आशा है कि मैं Node.js की अवधारणाओं को जमीन से समझाने में सक्षम था।

यदि आपको यह 'Node.js ट्यूटोरियल' मिला ' से मिलता जुलता, इसकी जाँच पड़ताल करो 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इस Node.js ट्यूटोरियल के टिप्पणी अनुभाग में इसका उल्लेख करें और हम आपके पास वापस आ जाएंगे।