如何在快速节点服务器中获取“req”的参数

How to get parameters of `req` in express node server

本文关键字:获取 req 参数 服务器 节点      更新时间:2023-09-26

我的UI中有两个参数。一个是file,另一个是dataObject。在实用程序中,我将代码编写为:

importPlan: function (formData, planDTO) {
    return axios.post(`${importPlanAPIPath}`, planDTO, formData);
  }

在路由器中,我将其发送为:

router.post('/plans/importPlan/', planController.importPlan);

在控制器中,我将请求编写为:

async importPlan(req, res, cb) {
    let plan,
      planDTO = req.body;
    const formData = new FormData(),
      file = req.files.file;
    formData.append('file', file.data);
    console.log('planDTO => ', planDTO);
    console.log(file.data, file.name);
    try {
      plan = await req.clients.planClient.importPlan(formData, planDTO);
    } catch (err) {
      return cb(err);
    }
    res.json(plan);
  }

req.body中,我得到了计划DTO,但我没有得到任何req.files的要求。我也在使用bodyparser来解析请求。我也将busboybodyparser用于多部分/表单数据。

有人可以告诉我做错了什么吗?提前谢谢。

你的参数是参数名称

    router.post('/plans/importPlan/:yourparam', planController.importPlan);
         async importPlan(req, res, cb) {
         var yourparam= req.params.yourparam;
            ..........
         res.json(plan);
         }

使用此模块进行文件上传 https://www.npmjs.com/package/multer