使用 multer 上传来自不同字段的多个文件?

2024-06-07

如何让 multer 接受来自多个文件类型字段的文件?

我有以下代码,使用 node.js 中的 multer 上传单个文件:

var storage =   multer.diskStorage({
  destination: function (req, file, callback) {
    callback(null, './public/uploads');
  },
  filename: function (req, file, callback) {
    callback(null, file.fieldname + '-' + Date.now());
  }
});

var upload = multer({ storage : storage });

app.post('/rest/upload', upload.array('video', 1), function(req, res, next){
    ...
}

从以下表格中,只有视频字段具有值(如果我同时指定两者,则会收到“意外字段”错误):

<form action="/rest/upload" method="post" enctype="multipart/form-data">
   <label>Video file: </label> <input type="file" name="video"/> 
   <label>Subtitles file: </label> <input type="file" name="subtitles"/> 
   <input type="submit"/>
</form>

从文档中尚不清楚如何处理这个问题?任何建议,将不胜感激。顺便说一句,我尝试了以下参数变化,但没有成功:

app.post('/rest/upload', [upload.array('video', 1), upload.array('subtitles', 1)] ...
app.post('/rest/upload', upload.array('video', 1), upload.array('subtitles', 1), ...
app.post('/rest/upload', upload.array(['video', 'subtitles'], 1),  ...

你想要的是upload.fields() https://github.com/expressjs/multer#fieldsfields:

app.post('/rest/upload',
         upload.fields([{
           name: 'video', maxCount: 1
         }, {
           name: 'subtitles', maxCount: 1
         }]), function(req, res, next){
  // ...
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 multer 上传来自不同字段的多个文件? 的相关文章

随机推荐

  • 如何克隆 bitbucket 存储库?

    一段时间后重新开始工作 我似乎不知道如何克隆 bitbucket 存储库 知道为什么我收到 未找到 错误吗 git clone verbose https bitbucket org helllamer mod openid Cloning
  • 从 Spring 启动运行 Java 类

    我使用的是Java8和Spring4 3 1 我有一个 Java Spring 应用程序托管由浏览器和移动应用程序客户端访问的 RESTfult 服务 其次 我编写了一个侦听事件的聊天服务器 socket io 来自客户 该聊天服务器正在从
  • 如何列出所有已加载的 Spring bean 定义文件

    在大型企业系统中 并不总是清楚在 ApplicationContext 构建期间导入了哪些文件 有没有办法列出过程中加载的所有文件 我知道如何列出加载的属性文件 但不知道导入的 bean 文件 更新示例 文件 1 applicationCo
  • 将类型信息传递给 Scala 中的函数

    我有对 json 对象执行一些常见操作的代码 即提取 所以我想创建一个通用函数 它接受哪个类的类型参数 代码如下所示 def getMessageType T json JValue Either GenericError T try Ri
  • 管道符 (|) 和脱字符号 (^) 属性选择器有什么区别?

    At W3学校 http en wikipedia org wiki W3Schools他们声明两者 http www w3schools com cssref sel attribute value lang asp and http w
  • C# 可以为控制台应用程序部分类“程序”类吗?

    我想知道是否可以将为任何控制台应用程序创建的默认 程序 类更改为部分类 我想这样做是因为我想要更好的组织 而不是将所有方法都放在按区域分类的 1 个文件中 对我来说 将某些方法类别放在单独的文件中会更有意义 我对分部类的理解是 它是多个文件
  • ServiceStack PooledRedisClientManager 故障转移如何工作?

    根据 git commit 消息 ServiceStack 最近添加了故障转移支持 我最初认为这意味着我可以关闭我的一个 Redis 实例 并且我的池客户端管理器将优雅地处理故障转移并尝试与我的备用 Redis 实例之一连接 不幸的是 我的
  • main.cpp 是必需的吗?

    我试图编译一个程序cmake 我最终删除了我的main cpp文件 我刚刚将其复合到另一个包含我的项目名称的文件中 即 我刚刚将主函数剪切并粘贴到该文件中 问题是我有一个main cpp未发现错误 不确定是否在C 一个名为main cpp是
  • 我可以在“com.android.vending.BILLING”中使用“uses-feature”而不是“uses-permission”吗?

    在我的应用程序的 AndroidManifest xml 中 我目前有
  • PHP字符串比较和相似度索引

    在 PHP 中 有什么优雅的代码可以在两个字符串中查找公共字母而不包含空格 还返回相似性索引 即计算常见字符的数量并返回占字符总数的百分比 假设我有一个字符串 LEGENDARY 而其他字符串为 BARNEY STINSON 所以我需要找到
  • 没有数组的 MinMax Heap 实现

    我发现了很多 MinMax Heap 实现 它们将数据存储在数组中 它真的很容易实现 这就是我正在寻找不同的东西的方式 我想仅使用堆的元素以及指向左孩子和右孩子的指针 当然还有一个要比较的键 来创建一个 MinMax 堆 因此 堆只有指向根
  • 垂直滚动,与 div/元素/锚点对齐/对齐

    我发现了一些可爱的网站 http www mini jp event campaign big point http www mini jp event campaign big point http www twenty8twelve c
  • 在 Symfony 2 和耦合中集成捆绑包(相关 Dotrine 2 实体)

    据我了解 捆绑是分离功能 假设我有一个UserBundle ABlogBundle 然后我的BlogBundle Post将有一个author引用的字段UserBundle User 这不是违背了 Bundle 的目的吗 我无法交换另一个U
  • 只需更新一个小部件 RemoteViews 而不是完全创建一个新小部件?

    在 AppWidgetProvider 类的 onUpdate 方法中 我最终执行了大量代码 以便我可以完全重新创建一个新的 RemoteView 对象 现实是 每次更新时 我实际上只需要在 RemoteView 中的 TextView 之
  • MINIX内部碎片2

    我正在用 C 语言编写一些软件 它递归地列出给定目录中的所有文件 现在我需要计算出内部碎片 我花了很长时间研究这个问题 发现 ext2 上的内部碎片只发生在最后一个块中 我知道理论上你应该能够从索引节点号获得第一个和最后一个块地址 但我不知
  • 如何使用@PostConstruct仅在一个实例中调用@Scheduled方法

    有一项工作需要按 cron 计划完成 与作业中相同的逻辑必须在 Spring Boot 应用程序启动时执行 因此使用 PostConstruct 方法 使用 Shedlock 因为计划在多个实例中运行应用程序 问题是 如何使 PostCon
  • 向结构化 numpy 数组添加字段

    将字段添加到结构化 numpy 数组的最简洁方法是什么 是否可以破坏性地完成 或者是否有必要创建一个新数组并复制现有字段 每个字段的内容是否连续存储在内存中 以便可以有效地完成此类复制 如果您使用 numpy 1 3 还有 numpy li
  • Django:显示管理员验证错误的自定义错误消息

    我正在使用 Django 1 2 4 我有一个模型 其中有一个需要验证的字段 当验证失败时 我想向用户显示自定义错误消息 模型编辑是在管理界面中完成的 这就是我目前正在做的事情 def clean fields self exclude N
  • RecyclerView 来自 Firebase 的部分和数据

    您好 我正在开发一个应用程序 在其中我必须使用 Firebase 填充数据回收器视图 准备就绪 现在我想做的是用 data firebase 填写一个 recyclerview 但有一些部分将成为托管 data firebase 的父级 我
  • 使用 multer 上传来自不同字段的多个文件?

    如何让 multer 接受来自多个文件类型字段的文件 我有以下代码 使用 node js 中的 multer 上传单个文件 var storage multer diskStorage destination function req fi