繁体   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