Node.js web服务器文件读取
当采用Node.js搭建服务器需要响应浏览器发送的资源请求,服务端应该如何进行磁盘管理操作
由于文件我们预先是不是知道的
var http=require('http')
http.createServer(function(req,res){res.end()})
请求资源一般是要在req.url进行解析获取到资源的路径,这里我假设已近得到了路径path
读取文件方式
文件模块对文件的读取常规方法fs.readFile()
,fs.readFileSync()
首先采用同步方法,这种方法会堵塞执行,不可取
第二种是异步方法,只要在读取完成之后在回调函数中获取,这也是要等待许久(如果文件过大的话)也不可取
还有一个种方式以文件流的形式传输,fs.createReadStream(path)
通过事件监听
var stream=fs.createReadStream(path)
stream.on('data',function(chunk){res.write(chunk)})
stream.on('end',function(){res.end()})
这样书写形式不是最简单
fs.createReadStream(path).pipe(res)
不在采用事件监听的形式,从数据起始到传递由管道自动去执行
Node.js web服务器文件读取相关推荐
- [Node.js] 模块化 -- fs文件读取模块
基本用法 导包: const fs = require('fs'); 调用unlink方法: 第一个参数:要删除的文件的路径 第二个参数:回调函数 // 01.导包 const fs = requir ...
- Elasticsearch:使用 Filebeat 从 Node.js Web 应用程序提取日志
本指南演示了如何从 Node.js Web 应用程序中提取日志并将它们安全地传送到 Elasticsearch Service 部署中. 你将设置 Filebeat 来监控具有标准 Elastic C ...
- 【Node】node.js实现服务器的反向代理,解决跨域问题
跨域对于前端来说是一个老大难的问题,许多方法如jsonp.document.domain + iframe...都有或多或少的问题,一个最佳实践就是通过服务器nginx做反向代理,但奈何不懂相关知识, ...
- Node.js Web 模块
Node.js Web 模块 什么是 Web 服务器? Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,Web服务器的基本功能就是提供Web信息浏览服务.它只需支持HTTP协议. ...
- 40.Node.js Web 模块
转自:http://www.runoob.com/nodejs/nodejs-module-system.html 什么是 Web 服务器? Web服务器一般指网站服务器,是指驻留于因特网上某种类型计 ...
- js删除服务器上文件,js删除服务器文件
js删除服务器文件 内容精选 换一换 目标服务器已安装操作系统,并且处于联网状态.目标服务器已安装鲲鹏编译插件. 保护组生产站点服务器为SUSE操作系统,对该云服务器开启容灾保护后,执行切换操作,云服 ...
- Node.js Web 模块(客户端 服务端实例)
Node.js Web 模块 Web 应用架构 Client - 客户端,一般指浏览器,浏览器可以通过 HTTP 协议向服务器请求数据. Server - 服务端,一般指 Web 服务器,可以接收客户 ...
- Node.js(一)——(Node.js安装及使用,通过Node.js搭建服务器,模块化及自定义模块,npm/yarn/nvm,内置模块fs的使用,buffer及stream,新闻列表案例)
目录 1.Node.js介绍 2.安装Node.js 3.使用Node.js实现第一个服务器 3.1初步感受Node.js 3.2Google Chrome 默认非安全端口列表,尽量避免以下端口. 3 ...
- Node.js Web开发_第二章(2)
电子书推荐 Digital Forensics with Kali Linux, 2nd Edition Debugging CSS Practical Entity Framework Core 6 ...
最新文章
- python爬去学校_python爬取学校教务系统
- gcn语义分割_ICCV Oral 2019:152层GCN大幅加深图卷积网络的方法,点云分割任务效果显著...
- JAVA中字符串比较equals()和equalsIgnoreCase()的区别
- 长沙计算机中级职称分数公布,大家所期待的2020年湖南省长沙中级职称评审公示...
- MTCNN-tensorflow源码解析之训练PNet网络-train_PNet.py
- 厄米高斯光束 matlab,拉盖尔高斯光束_厄米高斯光束MATLAB仿真
- 问题三十五: 怎么用ray tracing画二次曲面(quadratic surfaces)(5)——汇总
- 人脸照片不规范、如何更改?pupiIDistanceTooSmall 错误
- 程序员工作交接文档怎么写_IT交接事项.doc
- spark数据清洗解决方案
- 第六章 算法algorithms
- HTML期末大作业~海贼王大学生HTML网页制作10个页面作品(HTML+CSS+JavaScript)
- love2d 开发环境
- 计算机的复数形式英语,名词的复数形式大全
- 服务器临时文件定时清理,定时/开机自动清理Win10临时文件夹的技巧
- 中青网财经:请一位心理学博士当CTO 只有马云敢这么做
- 路由追踪traceroute分析
- 43、总建筑面积大于20000㎡的地下或半地下建筑的防火要求
- 空间数据引擎oracle_SQL/Oracle数据库是怎样与GIS的应用相联系起来的?
- Nginx+Apache一前一后双引擎驱动的你网站