簡體   English   中英

node.js 中的 http.createserver 和 net.createserver 在一起

[英]http.createserver and net.createserver in node.js together

我在節點 js 中有 2 個腳本。 一種使用“http”,另一種使用“net”。 我想將這些腳本放在一個腳本中。 我的“http”腳本如下:

const http = require('http');
const hostname = 'localhost';
const port = 3000;
const server = http.createServer((req, res) => {
 console.log(req.headers);
 res.statusCode = 200;
 res.end('<html><body><h1>Hello, World!</h1></body></html>');
})
server.listen(port, hostname);

“網絡”腳本:

var net = require('net');

var client = new net.Socket();
client.connect(4352, 'x.x.x.x', function() {
    console.log('Connected');
    client.write('%1POWR 1\r\n');
});

client.on('data', function(data) {
    console.log('Received: ' + data);
    client.destroy(); // kill client after server's response
});

client.on('close', function() {
    console.log('Connection closed');
});

我的目的是在啟動“http”腳本后運行“net”腳本。

將整個net script包裝在導出的函數中:

var net = require('net');

module.exports = () => {
    var client = new net.Socket();
    client.connect(4352, 'x.x.x.x', function() {
        console.log('Connected');
        client.write('%1POWR 1\r\n');
    });
    
    client.on('data', function(data) {
        console.log('Received: ' + data);
        client.destroy(); // kill client after server's response
    });
    
    client.on('close', function() {
        console.log('Connection closed');
    });
}

http script導入並執行導出的函數:

const http = require('http');
const hostname = 'localhost';
const port = 3000;
require('path/to/net/script')() //Add to anywhere you like
const server = http.createServer((req, res) => {
 console.log(req.headers);
 res.statusCode = 200;
 res.end('<html><body><h1>Hello, World!</h1></body></html>');
})
server.listen(port, hostname);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM