node.js - 上传没有 multipart/form-data 的文件(服务器到服务器)

标签 node.js rest post file-upload multipartform-data

来自这个答案https://stackoverflow.com/a/1695287/256400 ,我感觉需要 multipart/form-data 将文件从浏览器上传到服务器。但是,如果我的用例是将文件从服务器上传到服务器,那么如果我将 Content-Type 设置为 application/octet-stream 甚至特定类型(例如图像/png

我在 Node.js 服务器上进行了实验,并使用了 fs.readFile获取文件内容并使用 REST 库执行 HTTP POST。但我对读取文件时使用的编码有点困惑。默认 fs.readFile 返回 Buffer 对象。我很想使用二进制但是文档here says它的二进制文件已被弃用,取而代之的是缓冲区对象。这里读取文件内容并上传的正确方法是什么?可以在没有 multipart/form-data

的情况下完成此操作吗?

最佳答案

自从我找到我要找的东西后就回答这个问题。

@npcode 是正确的。我不需要指定任何编码,我可以直接使用 Buffer 对象,并且它可以工作。

我现在使用request npm module它在 body 中获取 Buffer 对象。我的困惑源于我最初使用的其余客户端,即 mojito platforms rest client

关于node.js - 上传没有 multipart/form-data 的文件(服务器到服务器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21413709/

相关文章:

powershell - 通过 Powershell 将文件上传到 HTTP

javascript - 如何在 JavaScript 中包含 ejs partials?

javascript - 如何使用 Discordie 一次连接到多个语音连接

laravel - 使用 Vagrant 执行 POST 请求时连接被拒绝

rest - 将 HAL 词汇与 JSON-LD 结合使用

c# - 使用C#的REST API身份验证(OAuth 1.0)

php - window.open向php传递参数并触发pdf创建和查看

node.js - Mongodb 和 Express.js : Automatically creating the db and collections based on Models

node.js - 如何在 Jest 中使用 babel-preset-env

java - 在 Camel 上使用 Springboot 的 Rest DSL 在重新启动 EAP 后创建路由抛出异常