Node.js 06 创建最基本的 web 服务器

54 阅读1分钟

1 . 基本步骤

0722.png

0723.png

0724.png

0725.png req请求对象:(获取客户端的相关数据)

只要服务器收到了客户端的请求,就会调用通过 server.on()为服务器绑定的 request 事件处理函数。如果想在事件处理函数中,获取与客户端相关数据属性,可用以下方式:

0727.png

// 例如
req.url    ----> 获取客户端请求的 URL 地址
req.method   -----> 获取客户端的 method 请求类型

res 响应对象:(获取服务器的相关数据或属性)

0728.png

res.end(str) ----> 通过服务器向客户端发送指定的内容,并结束这次请求的处理过程 

注意 :使用 res.end() 方法时会出现中文乱码情况 !需要手动设置内容的编码格式

0729.png

0726.png

server.listen(端口号,回调函数)

2 . 实现动态响应内容(根据不同的URL[客户要访问的地址]去响应不同的html内容)

0730.png

3 . 实现 clock 时钟的 web 案例

3 . 1 核心思路 :

0731.png

服务器充当的角色就是字符串的搬运工

在浏览器中访问 clock/index.html 和 clock/index.css 和 clock/index.js ,然后用 rep.url 获取到这三个路径 ,然后再 fs.readFile() 去读取这三个文件 ,读取完成后 ,再把文件里面的数据通过 res.end() 响应给浏览器 ,从而使浏览器渲染出来。

3 . 2 步骤 :

0732.png

0734.png 拼接成存放的路径就是 path.join(__dirname,url)

0735.png

3 . 3 完善路径拼接问题

满足用户直接访问 127.0.0.1 根路径也可以访问到页面 ,或者访问 127.0.0.1/index.html 也可以访问到页面。

0736.png