[英]How to send zip Files to a Node Server via HTTP POST? (server always only receives "{}")
在我的学士论文中,我正在编写一个程序来可视化通过 GDPR 第 20 条请求的个人数据。 由于这种数据通常是压缩的,我需要能够将压缩文件发送到我的 node.js 服务器。 这是我到目前为止所做的。
async function test (element){
let file = element.files[0];
await base64(file);
async function base64(file){
let reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = await async function () {
console.log(reader.result);
fetch('/api', {
method: 'POST',
body: reader.result,
})
.then(response => response.json())
.then(result => {
console.log('Success:', result);
})
.catch(error => {
console.error('Error:', error);
});
};
reader.onerror = function (error) {
console.log('Error: ', error);
};
};
}
在这一点上,我只是试图 console.log() 我的 request.body,但这里是我的服务器代码:
const { response } = require("express");
const express = require("express");
const { request } = require("http");
const JSZip = require("jszip");
const app = express();
app.listen(1234, () => console.log("Listening at 1234"));
app.use(express.static("public"));
app.use(express.json({limit: "10000mb"}))
app.post("/api", async (request, response) => {
console.log(request.body);
response.json({status: "success33"});
});
当我记录 reqeust.body 时,它是空的“{}”。 有人知道这个问题吗? 我读了很多线程,但没有一个真正适合我的问题。
提前致谢!
我遇到了同样的问题,当我添加这个中间件时:
import * as fileUpload from 'express-fileupload';
app.use(fileUpload({createParentPath:true}))
问题已经解决,我能够从req.files
中获取任何文件
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.