// 1. 调用fs模块来操作文件
let fs = require('fs')
// 2.fs.readFile()方法读取文件
// 参数1:读取文件的存放路径
// 参数2:读取文件时采用的编码格式,默认utf8
// 参数3:回调函数,拿到读取失败和成功的结果
fs.readFile('./resouce/data.txt', 'utf8', (err, dataStr) => {
// 如果读取成功则 err值为null
// 如果读取失败, 则err的值为错误对象, dataStr的值为undefined
if (err) {
return console.log('文件读取失败'+err.message)
}
console.log(dataStr)
})
// 1. 调用fs模块来操作文件
let fs = require('fs')
// 2.fs.writeFile()方法读取文件
// 参数1:必选参数,需要指定一个文件路径的字符串。表示文件的存放路径。
// 参数2:必选参数,表示要写入的内容。
// 参数3:可选参数,表示以什么格式写入文件内容,默认值是utf8。
// 参数4:必选参数,文件写入完成后的回调函数.
// 他会清除文件中已有的内容 将新的内容添加进去
fs.writeFile('./resource/dataTest.txt','hello world!',function(err){
if (err){
return console.log(err)
}
console.log('写入成功')
})
描述:用于处理路径的模块
方法:
path.join(),用来将多个路径片段拼接成一个完整的路径字符串
path.basename(),用来从路径字符串中,将文件名解析出来
path.extname(),获取路径中的文件扩展名
path方法的导入:
let path = require('path')
输入字符串字符串片段,返回完整的路径字符串
// 1.引入path模块
let path = require('path')
let pathJoin = path.join('../', 'Node/','resource/', 'data.txt')
console.log(pathJoin)//..\Node\resource\data.txt
// 读取文件内容
let fs = require('fs')
fs.readFile(pathJoin, (err, dataStr) => {
if (err) {
return console.log(err)
}
console.log(dataStr.toString())
})
输入路径和文件拓展名,返回路径中的最后一个部分,通常用来获取文件名
let path = require('path')
let pathBasename = path.basename('../Node/resource/data.txt','.txt')
console.log(pathBasename)// data
输入一个路径字符串,返回得到的拓展名字符串
// 读取文件拓展名
let pathExtname = path.extname(pathJoin)
console.log(pathExtname)// .txt
描述:用来创建web服务器的模块。
描述:只要服务器收到了客户端请求,就会调用sever.on()为服务器绑定的request事件处理函数
属性和方法:
- req.url 客户端请求的url地址
- req.method客户端method请求类型(get、post等)
描述:返回需要发送到客户端的内容
- res.end 向客户端发送指定内容,并结束请求的处理过程
当调用res.end方法,向客户端发送中文内容时,会出现乱码。需要手动设置内容的编码格式
res.setHeader(name,value)
// 1.导入http模块
let http = require('http')
// 2.创建web服务器实例
let webServer = http.createServer()
// 3.通过on方法为服务器绑定request事件
// 当有客户端执行request方法时(请求服务器),会触发回调函数
webServer.on('request', (req, res) => {
let url = req.url // req.url 客户端请求的url地址
let method = req.method// req.method 客户端的请求类型
// 当request触发时执行
// console.log(`url:${url},method:${method}`)
// 设置响应头和编码格式
res.setHeader('Content-Type', 'text/html;charset=utf-8')
// 向客户端响应添加内容
res.end(`地址url:${url},method:${method}`)
})
// 4.启动服务器
webServer.listen(80, () => {
console.log('heep server running at http://127.0.0.1')
})