विवरण
आप Node में एजेंट का एक उदाहरण बनाने के लिए new Agent() विधि का उपयोग कर सकते हैं। http.request() विधि 'http' मॉड्यूल से globalAgent का उपयोग करके एक कस्टम http.Agent उदाहरण बनाती है।
सिंटैक्स
new Agent({options})पैरामीटर
उपरोक्त फ़ंक्शन निम्नलिखित पैरामीटर्स स्वीकार कर सकता है:
options - इन विकल्पों में विन्यास योग्य विकल्प होंगे जिन्हें एजेंट बनाते समय सेट किया जा सकता है। नीचे वे फ़ील्ड/विकल्प हैं जो एजेंट के पास हो सकते हैं:
keepAlive - यह विधि सॉकेट्स को तब भी बनाए रखती है जब कोई बकाया अनुरोध नहीं होते, लेकिन उन्हें भविष्य के अनुरोधों के लिए TCP कनेक्शन को वास्तव में पुनर्स्थापित किए बिना रखती है। इस कनेक्शन को बंद करने के लिए 'close' कनेक्शन का उपयोग कर सकते हैं। डिफ़ॉल्ट मान: false।
keepAliveMsecs - keepAlive विकल्प को true के रूप में उपयोग करने पर, यह विकल्प TCP कीप-अलाइव पैकेट्स के लिए प्रारंभिक विलंब को परिभाषित करता है। डिफ़ॉल्ट मान 1000 है।
maxSockets - यह विकल्प प्रति होस्ट अनुमत सॉकेट्स की अधिकतम संख्या को परिभाषित करता है। डिफ़ॉल्ट रूप से यह मान अनंत है।
maxTotalSockets - सभी होस्ट के लिए अनुमत सॉकेट्स की कुल संख्या। प्रत्येक अनुरोध एक नए सॉकेट का उपयोग करता है जब तक सीमा पूरी नहीं हो जाती। डिफ़ॉल्ट मान अनंत है।
maxFreeSockets - यह मुक्त अवस्था में खुले छोड़े जा सकने वाले मुक्त सॉकेट्स की अधिकतम संख्या है। डिफ़ॉल्ट मान: 256।
scheduling - यह अगले मुक्त सॉकेट को चुनते समय लागू की जा सकने वाली शेड्यूलिंग रणनीति है। शेड्यूलिंग या तो 'fifo' या 'lifo' हो सकती है।
timeout - मिलीसेकंड में सॉकेट टाइमआउट को दर्शाता है।
उदाहरण
agent.js नाम से एक फ़ाइल बनाएं और नीचे दिए गए कोड स्निपेट को कॉपी करें। फ़ाइल बनाने के बाद, इस कोड को चलाने के लिए निम्न कमांड का उपयोग करें:
node agent.js
agent.js
// Node.js प्रोग्राम नए एजेंट के निर्माण को प्रदर्शित करने के लिए // http मॉड्यूल आयात करें const http = require('http'); // एक नया एजेंट बनाएं var agent = new http.Agent({}); // एजेंट के लिए विकल्प परिभाषित करें const aliveAgent = new http.Agent({ keepAlive: true, maxSockets: 5, }); // जीवित एजेंट के साथ कनेक्शन बनाएं var aliveConnection = aliveAgent.createConnection; // नया कनेक्शन बनाएं var connection = agent.createConnection; // कनेक्शन प्रिंट करें console.log('एजेंट के साथ सफलतापूर्वक कनेक्शन बनाया गया: ', connection.toString); console.log('जीवित एजेंट के साथ सफलतापूर्वक कनेक्शन बनाया गया: ', aliveConnection.toString);आउटपुट
C:\home\node>> node agent.js सफलतापूर्वक एजेंट के साथ कनेक्शन बनाया गया: function toString() { [native code] } सफलतापूर्वक जीवित एजेंट के साथ कनेक्शन बनाया गया: function toString() { [native code] }उदाहरण
'agentkeepalive' मॉड्यूल सॉकेट या एजेंट बनाने का प्रयास करते समय बेहतर लचीलापन प्रदान करता है। हम बेहतर समझ के लिए नीचे दिए गए उदाहरण में इस मॉड्यूल का उपयोग करेंगे।
स्थापना
npm install agentkeepalive --save
प्रोग्राम कोड
// Node.js प्रोग्राम नए एजेंट के निर्माण को प्रदर्शित करने के लिए // http मॉड्यूल आयात करें const http = require('http'); // agentkeepalive मॉड्यूल आयात करें const Agent = require('agentkeepalive'); // एक नया एजेंट बनाएं const keepAliveAgent = new Agent({}); // कुछ विकल्प लागू करें const options = { host: 'tutorialspoint.com', port: 80, path: '/', method: 'GET', agent: keepAliveAgent, }; // HTTP सर्वर मॉड्यूल के माध्यम से विवरण का अनुरोध करें const req = http.request(options, (res) => { // अनुरोध से प्राप्त स्थिति कोड, हेडर और अन्य विवरण प्रिंट करें console.log("StatusCode: ", res.statusCode); console.log("Headers: ", res.headers); }); // एजेंट विकल्प प्रिंट करें console.log("Agent Options: ", req.agent.options); req.end();आउटपुट
C:\home\node>> node agent.js Agent Options: { socketActiveTTL: 0, timeout: 30000, freeSocketTimeout: 15000, keepAlive: true, path: null } StatusCode: 403 Headers: { date: 'Sun, 25 Apr 2021 08:21:14 GMT', server: 'Apache', 'x-frame-options': 'SAMEORIGIN', 'last-modified': 'Thu, 16 Oct 2014 13:20:58 GMT', etag: '"1321-5058a1e728280"', 'accept-ranges': 'bytes', 'content-length': '4897', 'x-xss-protection': '1; mode=block', vary: 'User-Agent', 'keep-alive': 'timeout=5, max=100', connection: 'Keep-Alive', 'content-type': 'text/html; charset=UTF-8' }