Node.js में HTTP वेब सर्वर बनाएं: कोड उदाहरण के साथ ट्यूटोरियल
Node.js फ्रेमवर्क का इस्तेमाल ज़्यादातर सर्वर-आधारित एप्लिकेशन बनाने के लिए किया जाता है। इस फ्रेमवर्क का इस्तेमाल आसानी से वेब सर्वर बनाने के लिए किया जा सकता है जो उपयोगकर्ताओं को कंटेंट दे सकता है।
“http” और “request” मॉड्यूल जैसे कई मॉड्यूल हैं, जो वेबसर्वर स्पेस में सर्वर से संबंधित अनुरोधों को प्रोसेस करने में मदद करते हैं। हम देखेंगे कि हम इसका उपयोग करके एक बुनियादी वेब सर्वर एप्लिकेशन कैसे बना सकते हैं। नोड js.
HTTP का उपयोग करते हुए वेब सर्वर के रूप में नोड
आइए एक उदाहरण देखें कि अपना पहला Node js अनुप्रयोग कैसे बनाएं और चलाएं।
हमारा एप्लिकेशन एक सरल सर्वर मॉड्यूल बनाने जा रहा है जो पोर्ट नंबर 7000 पर सुनेगा। यदि इस पोर्ट नंबर पर ब्राउज़र के माध्यम से अनुरोध किया जाता है, तो सर्वर एप्लिकेशन क्लाइंट को 'हैलो वर्ल्ड' प्रतिक्रिया भेजेगा।
कोड स्पष्टीकरण
- require फ़ंक्शन की मूल कार्यक्षमता यह है कि यह पढ़ता है Javaलिपि फ़ाइल को निष्पादित करता है, और फिर एक्सपोर्ट ऑब्जेक्ट को वापस करने के लिए आगे बढ़ता है। इसलिए हमारे मामले में, चूंकि हम http मॉड्यूल की कार्यक्षमता का उपयोग करना चाहते हैं, इसलिए हम http मॉड्यूल से वांछित फ़ंक्शन प्राप्त करने के लिए require फ़ंक्शन का उपयोग करते हैं ताकि इसे हमारे एप्लिकेशन में उपयोग किया जा सके।
- कोड की इस पंक्ति में, हम एक सर्वर एप्लीकेशन बना रहे हैं जो एक सरल फ़ंक्शन पर आधारित है। जब भी हमारे सर्वर एप्लीकेशन पर कोई अनुरोध किया जाता है, तो यह फ़ंक्शन कॉल किया जाता है।
- जब कोई अनुरोध प्राप्त होता है, तो हम '200' हेडर प्रकार के साथ प्रतिक्रिया भेजने के लिए कहते हैं। यह संख्या सामान्य प्रतिक्रिया है जो क्लाइंट को सफल प्रतिक्रिया भेजे जाने पर http हेडर में भेजी जाती है।
- प्रतिक्रिया में ही हम 'Hello World' स्ट्रिंग भेज रहे हैं।
- फिर हम अपने सर्वर एप्लिकेशन को पोर्ट नंबर 7000 पर क्लाइंट अनुरोधों को सुनने के लिए server.listen फ़ंक्शन का उपयोग कर रहे हैं। आप यहां कोई भी उपलब्ध पोर्ट निर्दिष्ट कर सकते हैं।
यदि कमांड सफलतापूर्वक निष्पादित हो जाता है, तो जब आप ब्राउज़र में अपना कोड चलाएंगे तो निम्नलिखित आउटपुट दिखाया जाएगा।
उत्पादन
आउटपुट से,
- आप स्पष्ट रूप से देख सकते हैं कि यदि हम पोर्ट 7000 पर लोकलहोस्ट के URL को ब्राउज़ करते हैं, तो आपको पृष्ठ पर 'हैलो वर्ल्ड' स्ट्रिंग प्रदर्शित होगी।
- क्योंकि हमारे कोड में हमने विशेष रूप से सर्वर को पोर्ट संख्या 7000 पर सुनने के लिए उल्लेख किया है, हम इस यूआरएल पर ब्राउज़ करते समय आउटपुट देखने में सक्षम हैं।
आपके संदर्भ के लिए यह कोड है
var http=require('http') var server=http.createServer((function(request,response) { response.writeHead(200, {"Content-Type" : "text/plain"}); response.end("Hello World\n"); })); server.listen(7000);
Node.js में GET अनुरोधों को संभालना
Node.js में किसी अन्य साइट से डेटा प्राप्त करने के लिए GET अनुरोध बनाना अपेक्षाकृत बहुत सरल है। नोड में Get अनुरोध बनाने के लिए, हमें पहले अनुरोध मॉड्यूल स्थापित करना होगा। यह कमांड लाइन में निम्न पंक्ति को निष्पादित करके किया जा सकता है
एनपीएम स्थापना अनुरोध
उपरोक्त आदेश नोड पैकेज प्रबंधक को आवश्यक अनुरोध मॉड्यूल डाउनलोड करने और उन्हें तदनुसार स्थापित करने का अनुरोध करता है।
जब आपका npm मॉड्यूल सफलतापूर्वक स्थापित हो जाएगा, तो कमांड लाइन स्थापित मॉड्यूल का नाम और संस्करण दिखाएगी: @ .
उपरोक्त स्नैपशॉट में, आप देख सकते हैं कि संस्करण संख्या 2.67.0 के साथ 'अनुरोध' मॉड्यूल डाउनलोड और इंस्टॉल किया गया था।
अब आइए उस कोड को देखें जो इस 'request' कमांड का उपयोग कर सकता है।
कोड स्पष्टीकरण
- हम 'रिक्वेस्ट' मॉड्यूल का उपयोग कर रहे हैं जिसे अंतिम चरण में इंस्टॉल किया गया था। इस मॉड्यूल में आवश्यक फ़ंक्शन हैं जिनका उपयोग वेबसाइटों पर GET अनुरोध करने के लिए किया जा सकता है।
- हम www.google.com पर एक GET अनुरोध कर रहे हैं और उसके बाद प्रतिक्रिया प्राप्त होने पर फ़ंक्शन को कॉल कर रहे हैं। जब प्रतिक्रिया प्राप्त होती है तो पैरामीटर (त्रुटि, प्रतिक्रिया और बॉडी) में निम्नलिखित मान होंगे
- त्रुटि - यदि GET अनुरोध का उपयोग करते समय कोई त्रुटि प्राप्त होती है, तो उसे यहां दर्ज किया जाएगा।
- प्रतिक्रिया- प्रतिक्रिया में http हेडर होंगे जो प्रतिक्रिया में वापस भेजे जाएंगे।
- मुख्य भाग- मुख्य भाग में गूगल द्वारा भेजे गए प्रत्युत्तर की सम्पूर्ण सामग्री होगी।
- इसमें हम बस बॉडी पैरामीटर में प्राप्त सामग्री को कंसोल.लॉग फ़ाइल में लिख रहे हैं। तो मूल रूप से, जो कुछ भी हम जाकर प्राप्त करते हैं www.google.com कंसोल.लॉग में लिखा जाएगा.
आपके संदर्भ के लिए यह कोड है
var request = require("request"); request("http://www.google.com",function(error,response,body) { console.log(body); });
सारांश
- Node.js फ्रेमवर्क का उपयोग 'http' मॉड्यूल का उपयोग करके वेब सर्वर विकसित करने के लिए किया जा सकता है। एप्लिकेशन को किसी विशेष पोर्ट पर सुनने के लिए बनाया जा सकता है और जब भी एप्लिकेशन से कोई अनुरोध किया जाता है तो क्लाइंट को प्रतिक्रिया भेजी जा सकती है।
- 'अनुरोध' मॉड्यूल का उपयोग वेब साइटों से जानकारी प्राप्त करने के लिए किया जा सकता है। जानकारी में संबंधित वेब साइट से अनुरोधित वेब पेज की संपूर्ण सामग्री शामिल होगी।