一且警、path 路徑
用于處理文件路徑和目錄路徑的模塊
const path = require('path');
console.log(path.basename("./src/api/http.js"));
console.log(path.dirname("./src/api/http.js"));
console.log(path.extname("./src/api/http.js"));
console.log(path.format({ dir: "c:/src/api",base: "http.js" }));
console.log(path.parse("c:/src/api/http.js"));
console.log(path.join('/src', 'api/home', 'http.js', '..'));
image.png
二痹届、fs 文件系統(tǒng)
用于與文件系統(tǒng)進(jìn)行交互的模塊
- 寫入文件操作
const fs = require('fs');
const path = require("path");
fs.writeFile(
path.join(__dirname, 'message.txt'),
'hello world, welcome to study nodejs!',
(err) => { if(err) {
console.log(new Error(err));
return new Error(err) }
console.log("寫入成功砰盐!");
}
)
當(dāng)前目錄下新增一個(gè)message.txt文件
- 讀取文件操作
const fs = require('fs');
const path = require("path");
fs.readFile(path.join(__dirname, 'message.txt'), (err, data) => {
if (err) {
console.log(new Error(err));
return new Error(err);
}
console.log(data);
console.log(data.toString());
})
讀取文件buffer并轉(zhuǎn)化成string
- 3.創(chuàng)建與讀取燃逻、刪除目錄操作
fs.mkdir(path.join(__dirname, 'parents/child'), { recursive: true }, (err) => {
if (err) {
return new Error(err);
}
console.log('創(chuàng)建成功序目!');
fs.readdir(__dirname, (err, files) => {
if (err) {
console.log(new Error(err));
return new Error(err);
}
console.log(files);
fs.rmdir(path.join(__dirname, 'parents/child'), (err) => {
if (err) {
console.log(new Error(err));
return new Error(err);
}
console.log('刪除成功!');
})
})
})
mkdir & readir
三伯襟、http 服務(wù)
提供使用HTTP服務(wù)器和客戶端的API
1猿涨、搭建靜態(tài)服務(wù)器
1.1) 根據(jù)不同請求,響應(yīng)不同內(nèi)容
// 1. 加載模塊
const http = require('http');
// 2. 創(chuàng)建服務(wù)
const server = http.createServer();
// 3. 監(jiān)聽請求事件(事件驅(qū)動(dòng))
server.on('request', (req, res) => {
res.setHeader('Content-Type', 'text/html; charset=utf-8');
res.write(`<h1>Hello World!!!</h1><h1>你好姆怪,世界E炎!片效!</h1>`);
res.end();
})
// 4. 監(jiān)聽端口红伦,開啟服務(wù)
server.listen(8081, () => {
console.log('http://localhost:8081');
})
image.png
1.2) 根據(jù)不同請求,響應(yīng)不同文件
const http = require("http");
const fs = require('fs');
const path = require('path');
http.createServer(function(req, res) {
res.setHeader("Content-Type", "text/html; charset=utf-8");
if (req.url === "/" || req.url === "/index") {
fs.readFile(path.join(__dirname, "pages", "index.html"), function (err, data) {
if (err) {
console.log(new Error(err));
return new Error(err);
}
res.end(data);
});
} else if (req.url === "/login") {
fs.readFile(path.join(__dirname, "pages", "login.html"), function (err, data) {
if (err) {
console.log(new Error(err));
return new Error(err);
}
res.end(data);
});
} else {
fs.readFile(path.join(__dirname, "pages", "404.html"), function (err, data) {
if (err) {
console.log(new Error(err));
return new Error(err);
}
res.end(data);
});
}
}).listen(8081, () => {
console.log("http://localhost:8081");
});