文件对象不存在于请求有效负载中,呈现为空数组

时间:2017-11-16 19:54:54

标签: node.js angular file express

这个绝对让我很难过。我有一个大型表单插入到数据库中,并且formControls之间是一个input =“file”,我最终将其余的表单信息保存到一个包含所有相应数据成员的接口。一切都很好,并在插入POST请求中发送,除了以下内容。

Interface类中的数据成员(Javascript对象和base64encodedstring)

releaseNotesFiles?: Array<[File, any]>

提交时处理的相关代码。

  if (this.changeForm.get('changeOverviewFG.releaseNotesRadio').value === 1) {
    const file = this.changeForm.get('changeOverviewFG.releaseNotesFiles').value[0];
    const url = this.rnBlobs[0];
    this.change.releaseNotesFiles.push([file, url]);

  }

作为base64编码字符串的文件本身被正确移动到接口数据成员,而File本身则没有。但是在调试时,它似乎可以正常完成。屏幕截图包括......

enter image description here

enter image description here

所以当我真正将它提交到node.js后端并且在请求有效负载中显示它时,我有点难过......

enter image description here

我不知道为什么会发生这种情况。如果有人能帮助我找到领导,我会永远感激。

编辑:根据请求包括快递/正文解析器信息

const express = require('express');
const router = express.Router();
router.use(express.json({limit: "50mb"}));
router.use(express.urlencoded({limit: "50mb", extended: true, parameterLimit:50000}));

0 个答案:

没有答案