1.http模块
// 引入模块
const http = require('http');
// 创建服务,
// req:获取浏览器信息
// res:给浏览器响应信息
const proxy = http.createServer((req, res) => {
// 设置响应头
res.writeHead(200, {
'Content-Type': 'text/plain' });
// 设置编码格式
res.writ('<head><meta charset="utf-8"></head>');
// 设置文案
res.writ('你好,hello');
// 必需,结束响应设置文案
res.end('okay');
}).listen(30001);
2.url模块
// 引入模块
const url = require('url');
const http = require('http');
const proxy = http.createServer((req, res) => {
// 通过 url.parse() 获取url传参
// 假设页面url为:http"//www.example.coom?name=111&age=20
let getValue = url.parse(req.url, true).query;
console.log(getValue.name); // 111;
console.log(getValue.age); // 20;
res.end('okay');
}).listen(30001);
3.Npm模块:supervisor
NodeJs 自启动工具,修改代码后无需重启服务,自动重启更新代码
// 终端内 全局安装
npm install supervisor -g
// 使用supervisor 代替 node 启动程序
supervisor app.js
4.fs模块
// 引入模块
const fs = require('fs');
// 1. fs.stat() 检测是文件还是目录
/**
* path 文件路径
* callback 回调函数
*/
fs.stat('./package.json', (err, data) => {
if (err) {
console.log(err);
}
console.log(`是文件: ${
data.isFile()}`); // true
console.log(`是目录: ${
data.isDirectory()}`); // false
})
// 2. fs.mkdir() 创建目录
/**
* path 将要创建的目录路径
* mode 目录权限(读写权限),默认777,一般不用写
* callback 回调函数,传递异常参数 err
*/
fs.mkdir('./src/util', err => {
if (err) {
console.log(err);
return;
}
console.log('创建成功');
})
// 3. fs.writeFile() 写入操作(有则写入,无则创建并写入)
/**
* path 将要写入文件路径
* content 写入内容
* callback 回调函数,传递异常参数 err
*/
fs.writeFile('./util/format.js', '这是format 文件', err => {
if (err) {
console.log(err);
return;
}
console.log('写入成功');
})
// 4. fs.appendFile() 追加内容操作(有则写入,无则创建并写入)
/**
* path 将要追加文件路径
* content 写入内容
* callback 回调函数,传递异常参数 err
*/
fs.appendFile('./util/format.js', '这是追加内容', err => {
if (err) {
console.log(err);
return;
}
console.log('追加内容成功');
})
// 5. fs.readFile() 读取文件内容
/**
* path 文件路径
* callback 回调函数,传递异常参数 err
*/
fs.readFile('./util/format.js', (err,data) => {
if (err) {
console.log(err);
return;
}
console.log(data); // Buffer 类型
console.log(data.toString()); // 将 Buffer类型 转成 string类型
})
// 6. fs.readdir() 读取目录下的文件及文件夹
/**
* path 文件路径
* callback 回调函数,传递异常参数 err
*/
fs.readdir('./util', (err,data) => {
if (err) {
console.log(err);
return;
}
console.log(data); // ['index.html', 'index.js', 'js']
})
// 7. fs.rename() 重命名/移动文件
/**
* oldPath 旧文件路径
* newPath 新文件路径
* callback 回调函数,传递异常参数 err
*/
fs.rename('./html/old.html', './new/new.html', (err) => {
if (err) {
console.log(err);
return;
}
console.log('移动文件成功');
})
// 8. fs.rmdir() 删除目录(不能删除非空目录)
/**
* oldPath 待删除目录路径
* callback 回调函数,传递异常参数 err
*/
fs.rmdir('./html', (err) => {
if (err) {
console.log(err);
return;
}
console.log('删除目录成功');
})
// 9. fs.unlink() 删除文件
/**
* oldPath 待删除文件路径
* callback 回调函数,传递异常参数 err
*/
fs.unlink('./html/old.html', (err) => {
if (err) {
console.log(err);
return;
}
console.log('删除文件成功');
})
/// 一些同步方法
// 1. fs.readFilesync();
/**
* Path 待读取文件路径
*/
let content = fs.readFilesync('./test.txt');
console.log(content);