【问题标题】:Nodejs Express 4 file upload not workingNodejs Express 4文件上传不起作用
【发布时间】:2017-11-28 07:29:01
【问题描述】:

我在前端使用 Angular,在后端使用 Nodejs + Express 4。当我尝试使用简单的 html 表单上传文件时,请求包含:

Content-Type: image/jpeg

而像 busboy、connect-busboy 等插件要求 Content-Type 为 multipart/form-data ,因此 req.files 中没有任何内容

我在这里缺少什么?

【问题讨论】:

    标签: node.js express-4


    【解决方案1】:

    这可能与您的问题无关。但是,让我留下一些解决方法,当我遇到像你一样的问题时。我完全同意通过网络从 Angular 发送文件到 Express 可能有点棘手。

    我想出的是将文件编译成 base64 字符串。并在后端抓取 base64 字符串数据时对其进行解码。这样可以轻松避免您在帖子中提到的问题。

    其次,如果您的应用采用微服务架构,并且您愿意这样做,请使用Amazon S3Cloudinary 来存储您的数据。您只需保存数据库中文件的链接 url。通过这样做,您可以减少对后端的大量请求,并且可以轻松处理数据。

    希望这些解决方案对您有用!

    【讨论】:

    • 以 base64 格式发送文件是个好主意吗?哪个效率更高?将来会使用 S3,但现在不会,谢谢
    • @Ashutosh 我们必须记住,base64 将始终比原始原始数据文件大 33%。如果您的文件预计很大并且您非常关心减少流量数据。我不建议使用base64。但是,如果您不这样做,base64 可能是一种解决方法。
    猜你喜欢
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-21
    • 2019-03-26
    相关资源
    最近更新 更多