问题标签 [readable]

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.

0 投票
1 回答
25 浏览

javascript - 使用 Node.js 将上传的文件流转发到另一台服务器

我正在构建一个连接到 DMS (Alfresco) 的 Angular / Node.js 应用程序。服务器端 Node.js / Express 层充当代理,向客户端隐藏 Alfresco 的复杂性:

这个问题仅与 Node.js 后端有关。

上传文件时,我想将传入的文件直接转发到 Alfresco,而不是将其临时存储在磁盘上。使用临时磁盘存储可以按预期工作:

现在我想避免磁盘访问并将文件直接转发到 DMS。考虑到在 Node.js 中将缓冲区转换为 ReadableStream,我尝试了以下三种替代方案。

无论我尝试什么替代方案,Alfresco 总是抱怨,必填字段会丢失。尽管如此,仍提供了所有必填字段,因为临时存储文件的示例可以正常工作。我认为,Alfresco 无法处理我提供的流,并且我很难完全理解流在这种情况下是如何工作的。我应该怎么做?

请注意,为了便于阅读,所有错误处理以及 Alfresco 请求配置/API URL 都被省略了。