node 学习日记(二)向客户端返回资源文件数据

这篇博客详细记录了如何使用Node.js向客户端返回资源文件,包括HTML和图片。当客户端请求/index时,服务器会提供 './resource/index.html' 的内容;而请求/yu时,服务器则返回一张图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

加载html

当客户端访问/index时,
服务器返回”./resource/index.html”内的内容给客户端

<!--./resource/index.html-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
</head>
<body>
<h1>浪忆江南</h1>
</body>
</html>
//http.js
//http和fs模块结合使用,向客户端返回资源文件数据
/*todo:加载http模块和fs模块*/
var http = require("http");
var fs = require("fs");

var server = http.createServer();

/*todo:读取html文件的内容输出到客户端浏览器*/
server.on("request", function (req, res) {
    //通过fs.readFile读取"./resource/index.html"
    fs.readFile("./resource/index.html", function (error, data) {
        if(error){//如果error不为null
            res.setHeader("Content-Type", "text/plain;charset=utf-8");//Content-Type设置为文本格式
            res.end("文件读取失败");
        }else{
            if(req.url === "/index") {//判断url
                res.setHeader("Content-Type", "text/html;charset=utf-8");//Content-Type设置为html格式
                res.end(data);//response.end(msg)的第一个参数可以是二进制字节流
                //res.end(data.toString());//这样写也行
            }
            else{
                res.end();
            }
        }
    })
});

server.listen("1122", function () {
    console.log("Server Start");
});

加载图片

当客户端访问/yu时,服务器返回一张图片

/**省略了部分代码**/

/*todo:读取图片输出到客户端浏览器*/
server.on("request", function (req, res) {
    fs.readFile("./resource/yu.png", function (error, data) {
        if(error){
            res.setHeader("Content-Type", "text/plain;charset=utf-8");
            res.end("文件读取失败");
        }else{
            if(req.url === "/yu"){//判断url
                res.setHeader("Content-Type", "image/png");//Content-Type设置为png格式
                res.end(data);
            }
            else{
                res.end();
            }
        }
    })
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值