初始化Node 在任意位置创建一个项目目录,进入该目录进行Node初始化。在该目录中打开cmd命令窗口,执行命令:npm init -y即可初始化建立node项目。执行初始化之后会在当前目录生成一个package.json文件(当然package.json文件也可以手动编写),该文件指定了项目的基本配置信息(比如名称、版本、描述、入口、脚本、关键词、作者、许可证等元数据)。如果需要手动创建package.json配置注意需要严格遵循JSON书写格式,否则容易出现错误。 package.json文件 每个项目的根目录下面一般都有一个package.json文件,该文件定义了项目所需要的各种模块以及项目的配置信息。当我们使用npm install命令安装依赖包时就是根据这个配置文件来自动下载所需的模块,该文件指定了项目配置所需的运行条件和开发环境。package.json文件是一个JSON对象,每个成员对应项目的一项设置。下面是package.json文件中常见的一些配置说明,这里需要注意的是module 字段。早期没有ES6模块化方案时是遵循CommonJS 规范以main指定入口文件,ES6的推出使得模块化方案效率更高。所以node会优先查看是否有module字段,当没有指定module时则使用main字段指定入口。这个在之前的文章【Vue实战059:NPM配置国内镜像源及使用】中也有提到过,这里还是在说明一下吧。 index.js入口文件 这里我们从package.json文件的main属性中知道当前项目指定了index.js文件作为入口,所以这里我们新建一个index.js文件(文件名只能是英文字母、数字和下划线的组合)来实现hello world输出。在index.js文件中输入简单的:console.log("Hello world !"),console.log()是用来打印输出内容的。保存index.js文件(注意用UTF-8格式保存)后在cmd窗口通过node执行index.js(后缀可以省略)文件,这时候我们就可以在窗口中看到输出了:Hello world!。 搭建Web服务器 上面这个Hello world是不是很简单,我们再来搭建个Web服务器输出Hello world。搭建服务器我们需要用到核心模块:http,该模块提供了创建web服务器的API。http通过createServer方法创建web服务并返回一个server实例,实例可以实现request请求注册和端口监听等事件。当在客户端输入服务ip和端口就会被监听到,服务器接收到响应就可以进行处理请求。在请求对象req中包含有请求的方法、Url、Http协议和请求头等信息,通过req对象的属性可以获取到请求体中的数据。返回给浏览器的内容可以通过 res的write方法和end方法进行发送,write方法不会断开连接,所以在响应之后需要再使用end方法来断开与客户端的连接。 访问Web服务器 创建完成之后我们在cmd窗口通过node执行index.js文件,这时候Web服务就启动好了。打开浏览器并输入:http://127.0.0.1:8080/就可以访问服务。我们通过浏览器访问自己的服务器 http://127.0.0.1:8080/就会触发 request事件,事件会执行相应的回调函数并处理请求。处理后的内容通过我们自己Node服务器的res对象返回给了浏览器,这样我们就在浏览器上看到了响应内容:Hello world。 总结: Node提供了几个比较重要的模块来搭建Web服务器,其中http协议、文件系统、Url解析、路径解析以301重定向等是常用的模块。利用这些模块我们可以轻松地搭建Web服务,当访问该服务器时就可以通过Url访问服务器来获取对应的Web服务。 以上内容是小编给大家分享的【Node实战002:一个简单的hello world实例】。希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。 为了方便学习,下面附上本文用到的源码:var http = require("http") var server=http.createServer() //该方法创建一个web服务,返回一个server实例 server.on("request",(req,res)=>{ console.log("收到客户端的请求了,请求路径为:" + req.url) res.write("hello world!") res.end() }) server.listen(8080,()=>{ console.log("服务器启动成功了,通过 http://127.0.0.1:8080/ 来进行访问") })