2.1、文件操作
步骤:
- 第一步,引入
fs
模块 - 第二步,操作
API
示例代码:
var fs = require('fs')
//同步写入
let rel = fs.writeFileSync('./abc.txt','hello world')
console.log(rel);
//异步写入
fs.writeFile('./hello.txt','你好,世界!',function(err){
if(err){
console.error('输出异常!', err)
return
}
console.log('输出完毕!');
})
//同步读取
let data = fs.readFileSync('./hello.txt')
console.log(data.toString());
//异步读取
fs.readFile('./hello.txt', function(err,data){
console.log(data.toString());
})
//删除文件
fs.unlink('./abc.txt', function(){
console.log('删除成功!');
})
//创建文件夹
fs.mkdir("./tmp/hello",{recursive: true},function(err){
if (err) {
return console.error(err);
}
console.log("目录创建成功。");
});
//删除目录
fs.rmdir("./tmp",function(err){
if (err) {
return console.error(err);
}
console.log("读取 /tmp 目录");
});
2.2、路径操作
示例代码:
var path = require('path')
//返回当前执行的脚本文件所在的绝对路径
let url = path.resolve('dist')
//拼接一个路径
let url = path.join(__dirname, 'a','b','c.txt')
console.log(url);
2.3、Node
全局对象
__filename
__dirname
setTimeout()
clearTimeout()
setInterval()
clearInterval()
console
process
2.4、Web
模块
示例代码:
var http = require('http')
var fs = require('fs')
var url = require('url')
var querystring = require('querystring')
var app = http.createServer(function(req,res){
//使用 url 模块解析get请求的路由和参数对象
let path = url.parse(req.url,true)
console.log(path.pathname); //请求的路由
console.log(path.query); //请求参数对象
//使用querystring解析post请求
let postData = ''
req.on('data', function(data){
postData += data
})
req.on('end', function(){
//解析后的post请求参数对象
let body = querystring.parse(postData)
})
/*
根据路由判断请求的页面,使用fs响应 html 页面内容
*/
// let url = req.url
// let filePath = '.'
// console.log(url);
// if(url === '/' || url === '/index.html'){
// filePath += '/index.html'
// }else if(url === '/job.html'){
// filePath += url
// }else if(url === '/about.html'){
// filePath += url
// }else{
// }
// if(url === '/'){
// url = '/index.html'
// }
// if(url !== '/favicon.ico'){
// let data = fs.readFileSync(`.${url}`)
// res.write(data.toString())
// }
res.end()
})
app.listen(9990)
一些核心得node.js API