在开发工作中,上传文件到服务器是经常会做的事,也会发现我上传的文件使用不了。
主要记录一个破损文件可以上传但无法使用时,在前端如何让这个文件无法上传,文件选择以及文件名、文件大小就不写了....,直接写获取文件信息的方法。
- 利用
URL.createObjectURL()
静态方法创建 URL 的 File对象
getMp4Time(file) {
let that = this
return new Promise((resolve,reject) => {
//把element上传组件传给我们的file转成url
let url = URL.createObjectURL(file)
//获取对象
var audioElement = new Audio(url)
//监听事件
audioElement.addEventListener('loadedmetadata', () => {
const time = Math.round(audioElement.duration * 100) / 100
resolve(time)
})
audioElement.addEventListener('error', () => {
resolve(0)
})
})
},
- 使用时判断一下返回值,给出相应提示就好了
let time = await that.getMp4Time(file)
console.log('time',time)