node.js常用API详解

别来无恙 提交于 2020-02-22 22:38:17

(一)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))
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!