我们知道,Node.js 的应用场景是 高性能服务器
,而这一切的工作都是基于 HTTP,所以 HTTP模块
也是 Node.js 的核心。
HTTP 模块的作用,就是让我们可以构建一个 HTTP 服务器,通过简单的几行代码,就能完成。
// 导入 HTTP 模块:
var http = require('http')
// 回调函数
var server = http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/html'})
response.end('<h1>Hello world!</h1>')
})
// 监听端口
server.listen(8877)
console.log('server is running at http://127.0.0.1:8877/');
运行之后,访问 localhost:8877
就得到响应内容 hello world
。
服务器的应用,其实就是对请求和响应的处理 (request & response
) ,通过不同的客户端请求,返回不同的响应状态。
var server = http.createServer(function (request, response) {
/*
request 响应对象
response 请求对象
*/
if (request.method === 'GET' && request.url === '/') { // 响应首页
response.writeHead(200, {'Content-Type': 'text/html'})
response.end('<h1>Hello world!</h1>')
}
else { // 其他页面不存在
response.writeHead(404)
response.end('404 Not Found')
}
})
我们先暂时不扩展它,因为后面有更好的办法。