问题标签 [node-streams]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 使用 NodeJS 正确发送文件
考虑以下相当琐碎的中间件:
有几个问题我不确定如何处理:
- 如果 res 在此中间件运行之前已经发出“关闭”,它将被卡住。
- 如果 res 发出
close
或error
如何清理源流?autoClose
只有在end
读取所有数据后才会运行。但是,如果目标失败,它是如何传播到源的?我应该总是调用destroy
源流吗?
javascript - 为什么 child.stdin 可写?
为什么 Class:child_process.stdin 是可写流?我该如何推理? https://nodejs.org/api/child_process.html#child_process_child_stdin
背景:
新手来了 做 nodeschool 流冒险的“双工”问题。
我在这个问题上苦苦挣扎,而我(错误地)认为接口require('duplexer2')([Writable Stream],[Readable Stream])
应该用作require('duplexer2')(child.stdout, child.stdin)
javascript - 当响应完成时,我应该在快速响应(流)对象中处理哪些事件?
我正在尝试在请求完成时自动记录。
我有这样的事情:
- 这样做是否涵盖所有情况?(例如,当请求被中断时)
- 对于每个请求,我最多会被调用一次吗?
如果任何一个答案是否定的,请包括如何做。
javascript - Node.js Stream :- Streams 函数不会为同一个文件第二次调用
SFTB,我有一个POST
请求来到我的服务器multipart/form-data
,现在我想从那个请求中获取文件的内容。
我正在读取通过提供的文件streams
和管道,cvsParser
这只是csv-streamify
我们将内容传递给自定义Transform
函数的一个实例,该函数使用http
[我正在got
为此使用] 获取资源,并且在获取它之后我正在压缩图像.
现在的问题是,当我第一次提交文件时,它就像魅力一样工作,但是,当我第二次尝试提交相同的文件时,它会跳过整个stream
部分并直接跳转到finish
事件处理程序。
第一次记录:-
我第二次提交相同文件时的日志[前端刷新和不刷新]
仅供参考,在前端我使用fetch
API 发出POST
请求。
我的服务器代码:-
谢谢。
node.js - 如何在读取回调处理程序中添加从节点流读取的数据的附加数据?
我正在创建一个可读流数组(来自包含 JSON 文档的文件),并试图将它们通过管道传输到另一个流。
文件中的数据正在通过……但是对于我在管道流中收到的每个对象,我想知道这些数据来自哪个文件:
输出:
需要文件路径来进一步处理读取的对象(in jsonStream.on('data') callback
),但我不知道如何传递这些附加数据。
node.js - nodejs流 - 如何中止读取错误
我正在使用“多方”解析器在我的应用程序中读取和处理多部分表单数据。我的应用程序中间件读取上传的文件内容,即时解析它,如果成功,则发送到下一个中间件。如果没有,我必须中止请求并返回错误。
如果在解析过程中出现任何错误(即 readFile()),我想返回 HTTP 错误而不必消耗剩余的部分缓冲区。我相信可能有一个不错的方法来做到这一点,但我没有做对。
我尝试从我的 readFile() 中抛出异常,试图在 form.on('part', ...) 中捕获它。即使我能够捕捉到异常,它也没有中止流程。form.on(part,..) 的 return() 将从这个 evt 处理函数返回,但不会从外部函数返回。
根据 nodejs 流文档,我尝试从 readFile() 中发出错误事件并在 part.on('error', ...) 中处理错误。这也给出了相同的行为,并且不会结束处理。
我在这里想念什么?有没有合适的方法告诉流我不想进一步处理它..?
node.js - ffmpeg mp3 通过节点 js 流式传输
我正在尝试剪切 mp3 并流式传输到浏览器,但在浏览器中它显示损坏的文件
javascript - 使用 browserSync 观看 Gulp
我正在尝试编写一个执行以下操作的 gulp 文件:
- 运行监视任务,在任何模板更改时重建 Handlebars 模板。
- 如果构建失败,它会通过 notify() 方法通知 BrowserSync,因此如果出现问题,我可以在浏览器中看到弹出窗口。手表不应该停止。
- 如果构建正常,它会调用 browserSync.reload()。
所以我想出了以下代码:
问题是如果我使用 gulp-plumber 'end' 事件是 emmits 并且 browserSync.reload() 被调用。所以我在浏览器中没有看到任何错误通知。另一方面,如果没有“管道工”,任何构建错误都会中断监视任务。
有任何想法吗?
node.js - Sailsjs 下载数据流
我有一个exceljs
用来生成 excel 文件的sails 应用程序。查看他们的文档:
https://www.npmjs.com/package/exceljs#writing-xlsx
看来他们允许写入流。
当用户期待响应时,我该怎么做?
我阅读了以下内容:
http://sailsjs.org/documentation/concepts/custom-responses/adding-a-custom-response
http://sailsjs.org/documentation/concepts/custom-responses/default-responses
res.attachment()
保存文件后我也尝试过,但没有成功。有什么我想念的吗?
编辑
下面的答案几乎是正确的。我做了以下,它的工作。以前的解决方案有时会损坏文件。
这适用于我的 EC2 实例和本地。