如何在 NodeJS 中使用 Unirest POST JSON + pdf 文件
How to POST JSON + pdf file with Unirest in NodeJS
在 NodeJS 中,我正在尝试 POST JSON 使用以下代码将数据连同文件一起发送到服务器:
unirest.post(url)
.headers(headers)
.send(data)
.attach('file', file)
.end(function (response) {
var statusCode = response.status;
if (statusCode != 200) {
console.log("Result: ", response.error);
}
});
但是,在服务器上,我只收到文件,而不是来自 .send(data)
的 JSON 对象。我看到有一个 .multipart()
函数可以使用,但我不确定如何最好地使用它?
当您通过 http 发送 JSON 数据时,内容类型为 application/json
。当您通过 http 发送文件时,内容类型为 multipart/form-data
。您可以在发送多部分请求时发送表单字段,但不能在多部分请求中发送 JSON 数据。您有 2 个选项可以发送此请求
- 在使用
multipart/form-data
时,将您的 JSON 数据字符串化并将其作为表单字段发送并在另一端解析它
- 在使用
application/json
时,您在 JSON 数据 中将其作为 属性 文件并发送
在 NodeJS 中,我正在尝试 POST JSON 使用以下代码将数据连同文件一起发送到服务器:
unirest.post(url)
.headers(headers)
.send(data)
.attach('file', file)
.end(function (response) {
var statusCode = response.status;
if (statusCode != 200) {
console.log("Result: ", response.error);
}
});
但是,在服务器上,我只收到文件,而不是来自 .send(data)
的 JSON 对象。我看到有一个 .multipart()
函数可以使用,但我不确定如何最好地使用它?
当您通过 http 发送 JSON 数据时,内容类型为 application/json
。当您通过 http 发送文件时,内容类型为 multipart/form-data
。您可以在发送多部分请求时发送表单字段,但不能在多部分请求中发送 JSON 数据。您有 2 个选项可以发送此请求
- 在使用
multipart/form-data
时,将您的 JSON 数据字符串化并将其作为表单字段发送并在另一端解析它 - 在使用
application/json
时,您在 JSON 数据 中将其作为 属性 文件并发送