node.js ---- http模块 与 fs 模块

本文详细介绍了Node.js中的HTTP模块和文件系统(FS)模块的使用方法。通过创建服务器、设置响应头、读写文件、删除和移动文件等操作,展示了Node.js在处理网络请求和文件管理方面的基本功能。示例代码涵盖了常见的HTTP响应和文件操作场景,包括发送静态资源和处理不同URL请求。
摘要由CSDN通过智能技术生成

http模块

(1)require("http")   引入官方的http 模块

(2)xxx.createServer((req,res)=>{}) 创建一个服务器

(3)res.setHeader( ' Content-Type ' , 'text/plain; charset=utf8 ')//设置编码和数据包格式

(4)res.end()//可以传输数据也可以不传输,它是当前这一次网络请求结束的标志,一旦执行了就断开连接

(5) req.url 前端给后端发送网络请求的网址"http://ip:port"后面的部分字符串

(6)xxx.listen() //端口的意义:ip是访问计算机的标志 端口就可以进入计算机的具体哪一个程序

var http = require("http")
var app = http.createServer((req,res) => {
    if (req.url == "/home") {
        res.setHeader("content-Type","text/html;charset=utf8")
        res.end("这是首页")
    }else {
        res.end("error")
    }
})
app.listen(8081)

fs模块 

(1)var fs = require("fs")      引入系统自带的模块 file system

(2)fs.readFile(path,(err,data)=>{})      path 填路径 可以绝对可以相对 ;err代表读取失败 ;data代表读取成功 ,它是一个buffer类型的数据(二进制数据流) 可以通过toString()转化为字符串 注意:res.end()方法接受 字符串或者buffer

var fs = require("fs")
fs.readFile("./src/1.png",(err,data) => {
    
})

(3)fs.writeFile(path ,data,callback(err))   写入(创建)文件

如果文件存在,该方法写入的内容会覆盖旧的文件内容,不存在就创建一个新的

path - 文件路径;         data - 要写入文件的数据,可以是 String(字符串) ;        callback - 回调函数,回调函数只包含错误信息参数(err),在写入失败时返回。成功返回null。

var fs = require("fs")
fs.writeFile(__dirname+"/a.txt","hello world",(err) => {
    console.log(err);
})

 

 (4) fs.unlink(path,callback(err))        删除文件

path - 文件路径。 callback(err) - 删除回调函数,err错误信息

var fs = require("fs")
fs.unlink(__dirname+"/a.txt",(err) => {
    console.log(err);
})

(5)fs.appendFile(path, data, callback(err))        以追加方式写文件

path - 文件路径;         data - 要追加写入文件的数据,可以是 String(字符串) ;        callback - 回调函数,回调函数只包含错误信息参数(err),在写入失败时返回。成功返回null。

  

var fs = require("fs")
fs.appendFile(__dirname+"/test.txt","xiaozhang",(err) => {

})

 (6) fs.mkdir(path,  callback(err))       创建目录

var fs = require("fs")
fs.mkdir(__dirname+"/src/img",(err) => {
    console.log(err);
})

(7)fs.rename(oldPath, newPath, callback);        移动/重命名文件或目录:整个功能相当于重命名一个文件/文件夹路径

oldPath, 原目录/文件的完整路径及名;

newPath, 新目录/文件的完整路径及名;如果新路径与原路径相同,而只文件名不同,则是重命名

callback(err), 操作完成回调函数;err操作失败对象

移动文件有一个bug:新路径和旧路径必须是同一个根盘

var fs = require("fs")
fs.rename(__dirname+"/test.txt",__dirname+"/a.js",(err) => {
    console.log(err);
})

(8) fs.copyFile(oldPath, newPath, callback);        拷贝文件

oldPath, 原文件的完整路径;

newPath, 新文件的完整路径;

callback(err), 操作完成回调函数;err操作失败对象

拷贝文件以后两个文件都会存在磁盘中

var fs = require("fs")
fs.copyFile(__dirname+"/a.js",__dirname+"/src/b.js",(err) => {
    console.log(err);
})

(9)fs.readdir(path,callback)        读取目录  

var fs = require("fs")
fs.readdir(__dirname+"/src",(err,arr)=> {
    console.log(err,arr);
})

 

后端发送图片给前端

var http = require("http")
var fs = require("fs")
var app = http.createServer((req,res) => {
    if (req.url = "/test") {
        fs.readFile("./src/1.png",(err,data) => {
            if (!err) {
                res.end(data)
            }else {
                res.end("error")
            }
        })
    }else {
        res.end(404)
    }
})
app.listen(8081)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z_小张同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值