1 创建模块 也就是入口的js文件,里面加入特定的功能
teacher.js
2 导出模块 把功能和文件也就是模块名建立关系
exports.add = function() {}
3 加载模块 在其他的文件中引入并加载模块,在nodejs中使用require()来完成这个工作
var teacher = require('./teacher.js')
4 使用模块 直接调用模块中命名好的方法,来做一些特定的逻辑处理,完成某项功能
2 exports与module.exports的区别teacher.add('Scott')
1 是对象成为一个传统的实例使用exports exports是module.exports的一个辅助方法,
如果module.exports已经有了属性,exports上的属性就会被忽略,推荐使用exports
exports.add = add
2 module.exports使对象成为一个特别的类型使用module.exports 支持存在的东西
module.exports = add
- server.js
// 加载http模块 http模块是由javascript编写 职责是负责创建web服务器及处理http相关的任务等
var http = require('http');
//1 通过createServer创建web服务器,通过listen让服务器在8888端口监听请求,然后就能收到任何来自端口的请求
// 2 当请求进来的时候,我们需要告诉nodejs下一步该做什么,于是在createServer中传入匿名函数function(){}告诉nodejs下一步该怎么做
// 3 在监听到从8888过来的请求之后,nodejs会调用这个匿名回调函数同时传入两个参数,分别是请求体request和响应体response
// 4 request请求体用来获取请求信息,response响应体用来告诉服务器给request响应什么内容,要不然请求就是一直挂起的状态,
// 好比打电话一直没有接,电话一直响个不停知道超时挂机.
http.createServer(function (request, response) {
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// 发送响应数据 "Hello World"
// response.end('Hello World\n');
response.end('Hello Nodejs\n');
}).listen(8888,'127.0.0.1');
// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');
-
运行server.js
- node server.js