服务器“未定义”中的上传问题,因为我想要文件的名称

问题描述

大家好,我只是想知道在我的对象中在哪里可以找到文件名。我做了一个 console.log 来找到这个属性,但我有点迷失了。我试图做 ${data.name} 但它说未定义。任何人都知道我在哪里可以在我的请求中找到它?

//the function
    async onUpload() {
      const formData = new FormData();
      formData.append('image',this.ModalFile,this.ModalFile.name);
      await axios.post('/publications/uploads',formData,{
        headers: {
          'Content-Type': 'multipart/form-data',Authorization: `Bearer ${this.$store.state.token}`,},//router
router.post('/uploads',upload.single('image'),async (request,response) => {
  const data = await request.files[0].buffer;
  console.log(data);
  await fs.writeFile(`./uploads/${data.name}`,data);

  return response.status(200).json({ uploaded: true });
}); ```

解决方法

我认为该属性位于:request.files[0]

所以,应该是:request.files[0].name

在等待缓冲区之前尝试使用 console.log( request.files[0] )

file = request.FILES[0]
file.name           # Gives name
file.content_type   # Gives Content type text/html etc
file.size           # Gives file's size in byte
file.buffer         # Gives file's content as a buffer
file.read()         # Reads file