在Nodejs中创建自己的模块

1.首先,实现一个服务器功能

在根目录新建一个 server.js 文件:

var http = require('http');
http.createServer(function(req,res){
  res.writeHead(200,{"Content-Type":"text/plain"});
  res.write("Hello World");
  res.end();
}).listen(8888);

我们已经实现了一个服务器了,运行node server.js后,访问localhost:8888即可得到Hello World的响应。

2.‘打包’

接下来我们把上面实现的服务器‘打包’成一个模块,这段代码的主要作用就是启动一个HTTP服务器,如果想把它打包成一个模块的话,这个模块对外暴露的功能也只有一个:启动HTTP服务器;
为了暴露这个功能,我们把启动服务器的脚本放到一个函数里:

var http = require('http');
function start(){
  http.createServer(function(req,res){
    res.writeHead(200,{"Content-Type":"text/plain"});
    res.write("Hello World");
    res.end();
  }).listen(8888);
}
exports.start = start;

这样的话,我们就通过exports.start = start把启动服务器的功能暴露出来了。

3.调用模块

接下来,同样在根目录新建一个index.js脚本文件并实现调用模块:

var server = require('./server');
server.start();

没错,就像我们调用http模块一样,我们也可以通过相同的方式来调用我们自己的模块了。请求这个文件并指向一个变量(server),这样其中暴露的函数就可以调用了(server.start());

4.试一下

现在我们已经可以通过index.js来启动我们的服务器了:
node index.js
访问localhost:8888,我们同样可以得到Hello World的响应结果!

原文链接:https://www.jianshu.com/p/2d3cbc26363a

发表评论

登录后才能评论