最近做h5项目,发现在ios上视频黑屏,也没有播放时长;
百度了各种方法试了都不行;将我们的视频放到本地可以播放,找了人家网站的视频链接试了也可以播放,排斥了前端问题;然后让后台排查了一下,原来是视频路径被设置了强制下载,重新设置了视频路径就可以了。
判断是否链接被设置了强制下载:放到浏览器中没有播放,而是直接下载了该视频
如若与视频路径设置无关,可以尝试以下几种方法:
1、预下载
this.url = 'http://aa.com/a/b/c/xxxx.mp4'
uni.downloadFile({
url:this.url,
success: (res) => {
this.videoList.push(res.tempFilePath)
},
})
<video v-if="videoList.length > 0" v-for="item in videoList" :src="item"></video>
2、computed计算属性
<view v-html="videoHtml"></view>
this.video = 'http://aa.com/a/b/c/xxxx.mp4'
computed:{
videoHtml: function() {
return `<video controls="controls" width="100%" height="500px"<source src="${this.video}" ></video>`;
}
}