Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript videojs-如何在实时流中捕获自定义http错误代码?_Javascript_Jquery_Html5 Video_Http Live Streaming_Video.js - Fatal编程技术网

Javascript videojs-如何在实时流中捕获自定义http错误代码?

Javascript videojs-如何在实时流中捕获自定义http错误代码?,javascript,jquery,html5-video,http-live-streaming,video.js,Javascript,Jquery,Html5 Video,Http Live Streaming,Video.js,我有一个使用videojs 6.8播放的实时流(HLS)。对于某些用户,在播放开始后(加载了大约4-5个.ts文件),服务器会向我抛出409错误 如何捕获此特定错误代码,以便以编程方式停止播放并显示错误消息 目前,videojs一直试图无限期地恢复播放。我尝试了retryplaylist,blacklistplaylist,但我得到的所有信息是,播放列表已被列入黑名单,正在重试,我在控制台.log()中的任何地方都看不到HTTP代码player.on('error')不会抛出任何错误。我已经尝试

我有一个使用videojs 6.8播放的实时流(HLS)。对于某些用户,在播放开始后(加载了大约4-5个
.ts
文件),服务器会向我抛出
409
错误

如何捕获此特定错误代码,以便以编程方式停止播放并显示错误消息

目前,videojs一直试图无限期地恢复播放。我尝试了
retryplaylist
blacklistplaylist
,但我得到的所有信息是,播放列表已被列入黑名单,正在重试,我在
控制台.log()中的任何地方都看不到HTTP代码
player.on('error')
不会抛出任何错误。我已经尝试了以下三种方法,但没有一种提供http代码:

    player.on('error', function (e) {
        // no log
        console.log(e);
    })

     player.tech().on('retryplaylist', function (e, data) {
       // logs that it is being retried, but no http code
       console.log('retry');
       console.log(e);
     })

    player.tech().on('usage', function (e, data) {
        // logs the even 'retryplaylist` but does not give me a http code.
        console.log('usage');
        console.log(e)
    })
我不想将我的消息放在
retryplaylist
中,因为如果网络速度较慢,也会抛出该事件(我已经测试过了)


要捕获特定的409错误,我必须做些什么?

您是否尝试过修改以处理这些错误?一个相对安全的选择是用逻辑包装基本
xhr
函数,以捕获
409
并进行适当处理。您好,感谢您的回复。有关于XHR函数的文档吗?似乎没有此属性的
status
属性?您需要创建一个模块,在功能上替换当前位于Video.js中的,然后在播放器对象上覆盖它。天哪,所有这些都是为了捕获一个微不足道的错误代码。当然,videojs的神有更好的东西可以提供。