javascript - 服务器“未定义”中的上传问题,因为我想要文件的名称
问题描述
大家好,所以我只想知道在哪里可以找到对象中的文件名。我做了一个 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
推荐阅读
- r - rjdbc dbSendUpdate ORA-12899 值对于列来说太大
- python - 使用 JSON 的原子 Redis 操作
- r - 任何人都可以帮我解释我在将 tensorflow 用于神经网络时获得的这些图表吗?
- docker - 如何通过变量扩展将参数传递给 ENTRYPOINT?
- python - 火炬:最小填充张量,使得 num 元素可被 x 整除
- android - 如何使用 Google Classroom API 访问 Classroom Course Stream
- unity3d - 更改我的 mac 后在 Unity 中看不到我的项目
- c++ - 检查图连通性的程序会产生分段错误
- c# - xUnit 并行测试集合
- spring-boot - 带有 Spring Boot 单元测试设置的 Apache Camel