您现在的位置是:首页 > 编程 > 

node.js:简单的HTTP服务器

2025-07-27 04:18:10
node.js:简单的HTTP服务器 node.js:简单的HTTP服务器有意思,实现文件访问了 引入需要的部分代码语言:javascript代码运行次数:0运行复制ct http = require('http'); ct fs = require('fs'); ct path = require('path');第一

node.js:简单的HTTP服务器

node.js:简单的HTTP服务器

有意思,实现文件访问了

引入需要的部分代码语言:javascript代码运行次数:0运行复制
ct http = require('http');
ct fs = require('fs');
ct path = require('path');

第一个http服务,第二个fs文件操作,第三个路径相关

第一步:创建http代码语言:javascript代码运行次数:0运行复制
ct server = ((req, res) => {

});
第二部:http回调函数

定义路径

在回调函数里面写功能 首先定义路径

代码语言:javascript代码运行次数:0运行复制
let url = new URL(req.url, `http://${req.headers.host}`);
let pathname = url.pathname;
let filePath = path.join(__dirname, pathname);
//可以加个log看一下路径是否正确,这会在服务器运行,路径访问时打印
// cole.log('Request for:' , filePath);

读取文件

代码语言:javascript代码运行次数:0运行复制
fs.readFile(filePath, (err, data) => {
    if (err) {
      res.writeHead(404, {'Content-Type': 'text/plain'});
      ('ot found');
      return;
    } else {
      // 根据文件扩展名设置Content-Type
     // ct ext = (filePath).toLowerCase();
      //ct mimeTypes = {
        //'.html': 'text/html',
        //'.js': 'application/javascript',
        //'.css': 'text/css',
        // 其他文件类型...
       //现代浏览器的资源嗅探已经足够先进,因此对文件扩展名设置Content-Type并不是必要的
      //};
     // ct contentType = mimeTypes[ext] || 'application/octet-stream';
     // res.writeHead(200, {'Content-Type': contentType});
      (data);
    }
  })

设置端口,启动服务器

代码语言:javascript代码运行次数:0运行复制
server.listen(000, () => {
  cole.log('Server running at http://localhost:000/');
});
完整代码代码语言:javascript代码运行次数:0运行复制
ct server = ((req, res) => {
// 使用req.url和req.headers.host来创建完整的URL对象
let url = new URL(req.url, `http://${req.headers.host}`);
let pathname = url.pathname;

// 构建文件系统路径
let filePath = path.join(__dirname, pathname);

cole.log('Request for:', filePath);

fs.readFile(filePath, (err, data) => {
if (err) {
res.writeHead(404, {'Content-Type': 'text/plain'});
('ot found');
return;
} else {
//   // 根据文件扩展名设置Content-Type
//   ct ext = (filePath).toLowerCase();
//   ct mimeTypes = {
//     '.html': 'text/html',
//     '.js': 'application/javascript',
//     '.css': 'text/css',
//     // 其他文件类型...
//  现代浏览器的资源嗅探已经足够先进,因此对文件扩展名设置Content-Type并不是必要的
//   };
//   ct contentType = mimeTypes[ext] || 'application/octet-stream';
//   res.writeHead(200, {'Content-Type': contentType});
(data);
}
});
});

server.listen(000, () => {
cole.log('Server running at http://localhost:000/');
});
hello world
2024-12-11-175244
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2024/12/11 ,如有侵权请联系 cloudcommunity@tencent 删除http对象服务器函数浏览器

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1238369.html

相关标签:无
上传时间: 2025-07-26 19:32:00

上一篇:node.js初入

下一篇:bat脚本使用教程

留言与评论(共有 15 条评论)
本站网友 网络带宽测试
13分钟前 发表
() => { cole.log('Server running at http
本站网友 青蒿素作用
14分钟前 发表
(err
本站网友 叶酸片
12分钟前 发表
//localhost
本站网友 麻仁润肠丸
3分钟前 发表
000/'); }); 完整代码代码语言:javascript代码运行次数:0运行复制ct server = ((req
本站网友 杭州半岛国际
16分钟前 发表
//'.js'
本站网友 胎盘是什么
25分钟前 发表
`http
本站网友 希望不流泪
14分钟前 发表
() => { cole.log('Server running at http
本站网友 特纳氏综合症
21分钟前 发表
因此对文件扩展名设置Content-Type并不是必要的 //}; // ct contentType = mimeTypes[ext] || 'application/octet-stream'; // res.writeHead(200
本站网友 山药糊
27分钟前 发表
{'Content-Type'
本站网友 k533
17分钟前 发表
() => { cole.log('Server running at http
本站网友 无锡房地产信息
10分钟前 发表
(err
本站网友 打飞机图
29分钟前 发表
filePath); fs.readFile(filePath
本站网友 茯苓的功效与作用禁忌
5分钟前 发表
(err
本站网友 小板凳
24分钟前 发表
路径访问时打印 // cole.log('Request for