01如何使用nodejs快速搭建web服务器

啰嗦一下:

     要学习nodeJS最好能懂一点后端语言,或者,对web开发有了解。

导航:

  1.   nodeJS的介绍(与传统的后端语言简单对比)
  2.   开发环境如何搭建
  3.   第一个nodeJS写的简单网页



内容:

    一、nodeJS的介绍(与传统的后端编程语言进行对比)

        1、常见的后端语言:jsp,php,asp等。

                           jsp是java语言做web开发的技术。是Java Server Page的缩写
                           php作为一门语言,语法上混合了 C、Java、Perl 以及 PHP 自创新的语法。最早是Personal Home Page的缩写,后来改为Hypertext Preprocessor
                    asp是微软的一门web技术,使用的是VB的语法,是Active Server Pages的缩写。后来发展为aspx(即asp.net,使用C#语言)

                2、web程序(B/S)运行的过程(也是用户上网时,计算机是怎么样的运行过程)

                     当用户在浏览器中输入网址(地址)时,
                     1)、浏览器会发会发送请求,通过域名解析服务器(如果是域名而不是ip地址时),把网址解析成ip地址,根据ip地址找到对应的服务器,
                     2)、服务器端软件(如:iis,apache,tomcat等)在服务器指定的文件夹下,找到对应的文件(如果不是静态资源(如:html,图片等等),而是服务器语言编写的代码,就需要在服务器端进行编译)
                     3)、服务器端软件(如:iis,apache,tomcat等)把文件发送到客户端计算机
                     4)、客户端计算机的浏览器渲染(打开)网页,显示在用户眼前。
                     如下图所示:
                 01如何使用nodejs快速搭建web服务器
01如何使用nodejs快速搭建web服务器                     

              3、nodeJS是什么(当然需要完全了解,还需要进一步的努力学习)

                       nodeJS是JavaScript语言做后端(服务器端)开发的环境和平台,即JavaScript语言做web开发的技术。NodeJS不但自己可以完成服务器软件的功能,也不再需要php,asp,jsp等传统的服务器语言,JavaScript就可以搞定。
                      nodeJS就是让JavaScript代码可以实现服务器端的功能,相当于php,jsp,asp。打破了JS只能做前端的局限。
                      nodeJS是一个基于Chrome V8引擎的JavaScript运行环境。nodeJS使用了事件驱动,非阻塞式的I/O模型,使其轻量又高效
                     如下图所示
01如何使用nodejs快速搭建web服务器               01如何使用nodejs快速搭建web服务器
                     二、开发环境如何搭建

                     1、安装:

    进入nodejs官网:http://nodejs.cn/download/,下载最新版本的nodeJS,如:node-v8.9.3-x64.msi。安装时,没有特殊的,只需要全                           部下一步即可。

                     2、测试:

                          1)、新建hello.js文件,代码如下:
                                         console.log("原生JS的代码在node下可以直接执行");
                          2)、进入cmd(命令行),输入 node  hello.js或者node hello
                           01如何使用nodejs快速搭建web服务器01如何使用nodejs快速搭建web服务器
01如何使用nodejs快速搭建web服务器

                    3、用nodeJS搭建一个服务器软件(相当于asp的iis,php的apache,jsp的tomcat)
                             1)、创建server.js文件
                             2)、输入以下代码:
                                         const http = require('http');//引入http包
 const hostname ='127.0.0.1';//服务器地址
 const port = 706;//服务器的端口号

           const server = http.createServer((request,response)=>{//使用http来创建服务器,
response.statusCode=200;
response.setHeader('Content-Type','text/plain');
response.end('hello nodeJS\n');
  });
 server.listen(port,hostname,()=>{//服务器监听
      console.log(`Server running at http://${hostname}:${port}/`);//这个单引号要注意,是数字键1左边的那个键
 });
        3)、启动服务器:
                     在命令行窗口输入命令:node server.js
        4)、测试服务器是否能用           
                     在浏览器输入:http://localhost:706/

三、第一个nodeJS写的简单网页
1)、新建server.js写上如下代码
const http = require('http');//引入http包
const hostname ='127.0.0.1';//服务器地址
const port = 706;//服务器的端口号
const server = http.createServer((request,response)=>{//使用http来创建服务器,
response.statusCode=200;
if(request.url!=='/favicon.ico'){//如果没有这句话,下面的代码会执行两次,因为,在访问网址时,默认会请求“/favicon.ico”,所以,看似请求了一次,其实是请求了两次
console.log('这是打印在客户端的');
response.setHeader('Content-Type','text/html;charset=utf-8');
response.write('<h1>这是nodeJS的服务器端代码</h1>');
response.write('<table border="1"><tr><td>第一行第一列</td><td>第一行第二列</td></tr></table>');
response.end();
}
});
server.listen(port,hostname,()=>{
console.log(`Server running at http://${hostname}:${port}/`);
});

2)、启动服务器:
   在命令行窗口输入命令:node server.js
3)、在浏览器输入 http://localhost:706/