Node.js核心API

本文介绍了Node.js的基础操作,包括文件操作(读写、删除、创建目录)和路径操作,以及全局对象如__filename和__dirname的使用。同时,展示了如何使用HTTP模块创建服务器,处理GET和POST请求。内容涵盖了Node.js开发的关键知识点。
摘要由CSDN通过智能技术生成

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值