NodeJS 笔记(一)

114 阅读2分钟

NodeJS 常用模块的基本用法

一. fs

1.readFile

readFile('path'[,options],callback) 这个API接收三个参数,包含一个可选参数。最基础的用法是只接受文件路径和回调函数,中间的options一般用于指定读取文件时的编码格式,如utf8等,省略时也默认为utf8格式。 回调函数包含两个参数,一个是err用于承接错误,一个是data用于承接成功的输出。若读取成功,则err为null,data为输出内容;若读取出错,则err会返回一个错误对象,data则为undefined。 以下为一个使用示例:

const fs = require('fs')

fs.readFile('./yourPath', 'utf8', (err, data) => {
  if (err) {
    console.log(err);
  }
  console.log(data);
})`

2.writeFile

writeFile('path',data[,options],callback) 与readFile类似,不过参数中需要多传入一个data参数,指定要写入文件的数据内容。其他与readFile基本一致。 以下为一个使用示例:

const fs = require('fs')

fs.writeFile('./yourPath','yourData', 'utf8', (err) => {
  if (err) {
    console.log(err);
  }
  //若没有报错,则表示写入文件成功
})`

对于路径的处理,可以使用 + 直接拼接

__dirname + '相对路径'
//__dirname 直接输出当前文件所在的目录

最好使用path.join进行拼接处理

二. path

1.join

path.join('path1','path2','path3',....,'pathn') 这个API会将参数中给出的全部路径拼接起来,返回一个完整路径。需要注意,若参数中包含'../',将会直接抵消掉前面的一层路径。以下是一个使用示例

const path = require('path')

path.join(__dirname,'path1')

2.basename

path.basename('path'[,options]) 返回文件路径的最后一部分。后面的options可选参数可以填写扩展名,如.js、.html等,若填写该可选参数,则只返回文件名称。以下是一个使用示例

path = '/a/b/c/index.html'
const file = path.basename('path')
//file = 'index.html'
const fileName = path.basename('path','.html')
//fileName = 'index'

3.extname

path.extname('path') 返回该路径下所指文件的扩展名。以下是一个使用示例

path = '/a/b/c/index.html'
const file = path.extname('path')
//file = '.html'

三. http

1. 使用http搭建简易web服务器

const http = require('http)

//创建一个web服务器实例
const server = http.createServer()
//为服务器绑定request事件
server.on('request', function (req, res) {
    //请求处理
    console.log('your request is got')
    
    
    //req 请求数据对象
    req = {
       url, //客户端请求的url地址
       method  //请求方法
    }
    
    //res 响应对象 
    res.setHeader('Content-Type','text/html; charset=utf-8')  //设置响应头,并解决中文乱码问题
    res.end(data)  //向客户端返回内容,并结束本次通讯
})
//启动服务器
server.listen(port, function() {
    console.log("serve is running at 'http://127.0.0.1'")
})