(一)fs - 文件系统
用法:
变量 = fs.readFileSync(‘文件路径’)
fs.renameSync(‘改前’,‘改后’);
fs.unlinkSync(‘文件路径’)
let fs = require("fs");//引入fs模块
// 同步写法 try catch
try{
let data = fs.readFileSync("./html/index.html");
console.log("data",data);
}catch(e){
console.log("e",e)
}
console.log("11");
// 更名
fs.renameSync("./html/index.html","./html/one.html")
//文件名更改之前 文件名更改之后
//删除
fs.unlinkSync("./html/one.html")
(二)静态资源托管
let http = require("http");//引入http模块
let fs = require("fs");//引入fs模块
let app = http.createServer((req,res)=>{//创建服务器
//判断是动态资源还是静态资源
if(req.url.indexOf("./api")!==-1){
console.log("处理接口",req.url);
res.end();
}else{
//处理静态资源
console.log("静态资源",req.url);
try{
let path = req.url==='./'?'/index.html':req.url;
let html = fs.readFileSync("./www"+path)
res.write(html);
res.end();
}catch(e){
let error = fs.readFileSync("nopage.html")
res.write(error)
res.end()
}
}
})
app.listen(3030,'localhost',()=>console.log('server is running'));//监听
(三)url模块
用法:
url.parse(str,true) 返回 对象 true处理query为对象
url.format(obj) 返回字符
let url = require("url");
let str="http://www.baidu.com/app/html/index.html?a=1&b=2";
let obj = url.parse(str,true);
//返回非地址栏数据
console.log(obj.query)
//返回字符
console.log(url.format(obj));
(四)querystring 模块
用法:
querystring.parse(str) 返回对象
querystring.stringify(obj) 返回字符串
let querystring = require("querystring");
let str = "?a=1&b=2&c=3"
//返回对象
console.log(querystring.parse(str))
//返回字符串
console.log(querystring.stringify(str))