如何从服务器端的请求中读取FormData?

问题描述 投票:1回答:1

我将文件从客户端发送到服务器端:

const formData = new FormData();
formData.set("file", file, file.name);

let ip = location.host;

$.ajax({
    processData: false,
    contentType: false,
    type: "POST",
    url: http() + ip + "/fileUpload",
    data: formData,
    success: %callback%,
    error: function (err) {
        return false;
    }
});

服务器端(Node.js)通过Express.js捕获此请求:

app.post("/fileUpload", function (req, res) {…}

现在,我想在调试器的服务器端访问上载的文件。由于文件是用FormData包装的,因此我尝试在FormData API之后使用req.body.get("file"),并希望以FormData.get() / FormData.get()的形式获取文件,但我得到了:

未捕获的TypeError:req.body.get不是函数

问题:如何从POST请求中访问由base64包装的上传文件?

由于blob可以将请求序列化到文件,因此文件已100%上载到服务器端。

P.S。我已经检查了FormData,但是那里的答案仅演示了一种发送请求而不是继续进行请求的方法。

javascript node.js file-upload request form-data
1个回答
-1
投票

您可以通过以下方式访问文件:

FormData
© www.soinside.com 2019 - 2024. All rights reserved.