uni-app video的header属性确定能用吗

uni-app video的header属性确定能用吗

开发环境 版本号 项目创建方式
Windows WIN10 HBuilderX
产品分类:uniapp/App
PC开发环境操作系统:Windows
HBuilderX类型:正式
HBuilderX版本号:3.92
手机系统:Android
手机系统版本号:Android 12
手机厂商:华为
手机机型:荣耀9X
页面类型:vue
vue版本:vue2
打包方式:云端
项目创建方式:HBuilderX

### 示例代码:
```html
<video controls id="myvideo" :src="videoUrl" [@fullscreenchange](/user/fullscreenchange)="screenChange" :header="header"
[@error](/user/error)="videoErrorCallback" [@loadeddata](/user/loadeddata)="loadeddata" [@waiting](/user/waiting)></video>
this.header = {
referer: "http://www.baidu.com/",
cookie: "xxxxx"
}

操作步骤:

用上面的代码

预期结果:

可以播放

实际结果:

不能播放视频


bug描述:

video的header属性传了也没用,因为只支持APP所以没办法看APP的请求到底传成功了没有,用了抓包也抓不到


更多关于uni-app video的header属性确定能用吗的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app video的header属性确定能用吗的实战教程也可以访问 https://www.itying.com/category-93-b0.html


根据uni-app官方文档和实际测试,video组件的header属性在APP端确实存在兼容性问题。以下是关键点分析:

  1. 官方文档中header属性明确标注仅支持APP端,但实际测试发现部分Android机型可能不生效

  2. 常见问题原因:

  • 华为等厂商设备可能有自定义视频播放器内核
  • Android系统WebView内核差异导致header传递失败
  • 云端打包使用的SDK版本可能影响功能支持
  1. 临时解决方案建议:
// 改用uni.request先获取视频流
uni.request({
    url: videoUrl,
    header: yourHeader,
    responseType: 'arraybuffer',
    success(res) {
        // 转为本地临时路径
        this.videoUrl = URL.createObjectURL(new Blob([res.data]))
    }
})
回到顶部