一.初识Node.js
1.什么是Node.js
Node.js是一个基于Chrome V8引擎的JavaScript的运行环境。
注:
- 浏览器是JavaScript的前端运行环境。
- Node.js是JavaScript的后端运行环境。
- Node.js中无法调用DOM和BOM等内置浏览器API。 2.如何安装Node.js
官方网址下载(www.npmjs.com/)
3.使用Node运行JS代码
1.打开终端
2.输入node 要执行的js文件路径
注:使用终端时要用cd切换当前目录
或者直接到当前目录按shift键加鼠标右键,直接点击Powershell窗口。
3.终端中的快捷键
- 使用⬆键,可以快速定位到上一次执行的命令。
- 使用tab键,能够快速补全路径。
- 使用esc键,能够快速清空当前已输入的命令。
- 输入cls命令,快速清空终端。
二.fs文件系统模块
fs模块是Node.js官方提供的用来操作文件的模块。
1.导入fs模块
const fs = require('fs');
2.读取指定文件中的内容
fs.readFile(path[.optinons],callback);
-
参数1:必选参数,字符串,表示文件的路径。
-
参数2:可选参数,表示以什么样的编码格式来读取文件。
-
参数3:必选参数,文件读取完成后,通过回调函数拿到读取的结果。
判断条件:判断err对象是否为null。
3.向指定的文件中写入内容
fs.writeFile(file,data[.options],callback);
-
参数1:必选参数,指定一个文件路径的字符串,表示文件的存放路径。
-
参数2:必选参数,表示要写入的内容。
-
参数3:可选参数,表示以什么样的格式来写入文件内容,默认值是utf8。
-参数4:必选参数,文件写入完成后的回调函数。
判断条件:判断err对象是否为null。
4.路径动态拼接问题
用绝对路径代替相对路径可避免这个问题,但移植性差,维护性差。
用————dirname(表示当前文件的目录)加上当前文件路径的字符串。
三.path路径模块
1.导入path模块
const path = require('path');
2.路径拼接
path.join([...paths]);
返回值:< string >.
注:拼接../会抵消前面的一个路径。
3.获取路径中的文件名
path.basename(path[.ext]);
参数1:必选参数,表示一个路径的字符串。
参数2:可选参数,表示文件扩展名。
返回:< string >表示路径中的最后一部分。
4.获取路径中的扩展名
path.extname(path);
四.http模块
http模块是Node.js提供用来创建web服务器的模块。
1.导入http模块
const http = require('http');
2.创建web服务器
const sever = http.createSever();
3.绑定request事件
sever.on('request',(req,res) => {});
req:访问客户端相关的数据式属性。
res:访问服务器相关的数据式属性。
res.end(str):向客户端发送指定内容,并结束这次请求。
4.解决中文乱码问题
res.setHeader('Content-Type','text/html:charset=utf-8');
5.根据不同的url响应不同的html页面
实现步骤:
-
获取请求的url地址。
-
设置默认的响应内容为404 Not found。
-
判断用户的请求是否为/或者/index.html首页。
-
判断用户请求是否为/about.html关于页面
-
设置Content-Type响应头,防止中文乱码。
-
使用res.end()把内容响应给客户端。