轻松创建nodejs服务器(3):代码模块化
nodejs的功能块大都以模块的形式存在的。
通常会有一个统一入口index.js,然后调用不同的模块来完成我们需要的功能。
我们先来看看怎么把server.js变成一个模块让 index.js 主文件使用。
var http = require("http");
...
http.createServer(...);
“http” 是nodejs自带的模块,我们在我们的代码中请求它并把返回值赋给一个本地变量。 我们可以用这个变量来调用 http 模块所提供的公共方法的对象,变量名不是固定的,你完全可以按照你的喜好来命名这个变量,不过我建议直接用模块名来做变量名,可以使代码可读性更高些。
我们按这个方式改一下server.js里的代码,我们把代码放到start()函数里,并通过expors将代码提供给其他页面引用。
var http = require("http");
function start() {
function onRequest(request, response) {
console.log("Request received.");
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started.");
}
exports.start = start;
这样,我们现在就可以创建我们的主文件 index.js 并在其中启动我们的HTTP了,虽然服务器的代码还在 server.js 中。
创建 index.js 文件并写入以下内容:
var server = require("./server");
server.start();
执行node index.js
这样做就可以把应用的不同部分放入不同的文件里,并且通过生成模块的方式把它们连接到一起了。
下一节我们要了解一下路由
相关文章
npm安装的全局包/工具不能使用,不是内部/外部命令的解决方法
这篇文章主要给大家介绍了关于npm安装的全局包/工具不能使用,不是内部/外部命令的解决方法,文中通过图文将解决的方法介绍的非常详细,需要的朋友可以参考下2023-03-03
基于Express和Multer实现文件本地服务器文件上传功能
在现代应用程序中,文件上传功能成为了用户共享和存储数据的重要途径,所以本文我们一起来探讨文件上传中间件的重要性,并提供常见的实现方法和相应的代码吧2023-06-06


最新评论