既然是内置模块,无需下载,直接引入即可
1、http
服务器模块
// 1、引入服务器模块
let http = require("http");
// 2、创建服务:createServer((req, res) => {})
// 参数1:req:接收头信息,前端发送过来的数据
// 参数2:res:发送头信息,后台发送给前端的数据
http.createServer((req, res) => {
// 在回调函数内如果有人请求这个服务器,要做的处理
// 过滤不想接收的路径
if (req.url != "/favicon.ico") { // /favicon.ico是图标路径
// 向前端发送数据 res.write();
res.write("hello");
// 路由处理:判断前端请求的地址,再决定向前端发送什么数据
if (req.url == "/page") {
res.write("page");
}
}
// 给前端发送结束的功能,表示结束请求 res.end();
// 完成此次请求的响应之后,要结束本次响应,否则前端会一直处在请求状态
res.end();
// 3、监听端口 .listen(端口,域名,回调函数)
}).listen("3000", "127.0.0.2", () => {
console.log("服务器开启成功");
})
- 服务器开启成功后,在地址栏输入
域名:端口号
的格式就能看到后台发送给前端的数据了 - 注意端口号不要重复
2、fs
文件模块
- fs模块提供了读取文件和写入文件两种方法
- 写入文件就是通过js在本地文件夹创建文件(手动创建不香嘛)
// 1、引入文件模块
const fs = require("fs");
// 2、fs的读取方法:fs.readFile()
// 参数1:读取的文件地址
// 可选参数2:编码格式(不需要,发到前端会自动解析)
// 参数2:回调函数,回调函数接收两个参数,第一个表示读取失败的报错信息,第二个表示读取到的数据
// 报错为null表示读取成功
fs.readFile("data/hello.txt", (err, data) => {
console.log(err); // 获取错误信息:读取成功为null,读取失败为报错对象
console.log(data); // 读取的数据
if (err) {
// err为真表示读取是吧
console.log("404");
} else {
// 读取成功是null
console.log(data);
}
})
// 3、fs的写入方法:fs.writeFile()
// 参数1:路径
// 参数2:要写的内容
// 参数3:回调函数,写入成功执行的函数
fs.writeFile("data/data.txt", "hello world"); // 在本地创建了data文件夹,文件夹下有data.txt文件,此文件内容是hello world
3、url
工具模块
// 1、引入url模块:require("url");
let url = require("url");
// 模拟一个url
let str = "http://102.0.0.2:3000/page/news/index.html?user=admin&pass=123#3-2";
// 2、url.parse()的返回值是url上的各个部分
// 参数1:要解析的url
// 参数2:布尔值,默认为false,true表示将查询数据转成对象
let urlObj = url.parse(str,true);
console.log(urlObj);
// 比如想拿到解析后的查询数据部分
console.log(urlObj.query); // user=admin&pass=123 -- 将参数2改成true之前
console.log(urlObj.query); // {user:"admin",pass:123} -- 将参数2改成true后
4、querystring
工具模块
- 专门用来解析查询数据的,转成对象
// 1、引入querystring模块:require("querystring");
let querystring = require("querystring");
// 模拟一个url
let str ="user=admin&pass=123";
querystring.parse(str); // {user:"admin",pass:123}