node.js创建本地服务器并运行教程
Node.js就是运行在服务端的JavaScript,基于Chrome V8引擎的JavaScript运行环境,简易上手node.js后就可以在本地电脑上创建本地服务器。
在nodejs安装根目录下创建一个目录,如project,创建一个js文件,如server.js,添加下面的代码:
//请求Node.js自带的http模块。 var http = require('http'); //http模块提供了createServer函数,这个函数会返回一个对象,我们将返回的对象赋值给server。 var server = http.createServer(function(req, res){ //req:接收到的数据。 res:响应数据 //下面三行为了显示内容,不设置也可以访问服务器// res.setHeader('Content-Type','text/html; charset=utf-8'); //设置响应的头部,content-Type 响应数据内容的类型 res.writeHead(200,'ok'); //HTTP状态码 res.write('Hello Node!!'); //响应内容 //上面三行为了显示内容,不设置也可以访问服务器// res.end(); }); //这个对象有个叫做listen的方法,这个方法可以有个数值参数。 //指定这个HTTP服务器监听的端口号。 //当我们打开http://localhost:8080的时候,服务器就会接收数据,并且响应数据 server.listen(8080); console.log('服务器已打开,可以运行 http://localhost:8080');
在node.js command prompt上(或cmd)运行node server.js
打开服务器,如下图:
提示服务器已打开,就可以在浏览器中输入http://localhost:8080
打开
代码注释:
1、首先需要请求node.js自带的http模块,并赋值给定义的变量http
。
2、http模块提供了createServer
函数,这个函数会返回一个对象,将返回的对象赋值给定义的变量server
。
3、给createServer
函数传入一个匿名函数,用来接收数据和响应数据(req:接收到的数据。 res:响应数据)。
4、其中res.setHeader();
用于设置响应头部;content-Type
响应数据内容的类型,可以设置成text/html
、text/json
、text/plain
等。
5、后面的charset=utf-8
是解析方式,也可以不写,一般写在html文件。
6、res.writeHead()
就是输入HTTP的状态值(关于HTTP状态问题,可以自行搜索了解)。
7、res.write()
里可以写入响应内容了。
8、最后就是执行server对象的listen
的方法,这个方法可以有个数值参数,指定这个HTTP服务器监听的端口号。如server.listen(8080);
就是让它监听8080端口,当打开http://localhost:8080的时候,服务器就会接收数据,并且响应数据了。