ios – 在302重定向之后,AVPlayer无法为同一个域发送cookie

我正在使用iOS AVPlayer播放HLS流.在HLS会话的开始,当我收到index.m3u8 URL以响应创建AVPlayerItem时,该响应还设置了一个基于会话的验证所需的cookie.说这个cookie名称是myCookie,它是为域“.myhost.com”创建的.现在一切正常,播放器发送myCookie从xxx.myhost.com/stream下载ts块.随着播放继续,播放列表最终被更新,播放器下载更新的播放列表.有时,更新的播放列表包含一个ts块以从另一个主机从URL下载.因此,当尝试用不同的主机播放大块时,播放器请求xxx.someotherhost.com下载该块.这导致响应302重定向到位置:xxx-abc.myhost.com/ads.显然AVPlayer并不发送myCookie同时请求来自someotherhost.com的一个块,因为它不符合myCookie的域.但问题是重定向到xxx-abc.myhost.com/ads后,AVPlayer不会发送myCookie,即使重定向URL的域是myhost.com也与cookie的域匹配.

请注意,重定向网址域与原始流域相同,也与myCookie的域相同.由于AVPlayer在重定向后不发送cookie以下载块,所以ts块请求失败,403 Forbidden(No Token)

我在这里做错了什么,或者看起来像iOS AVPlayer中的一个bug?

有没有办法解决这个问题?请分享你的想法.

解决方法

制作一个演示该问题的示例,提交错误报告.然后创建一个提到雷达的DTS事件,并且您正在寻找一个解决方案,以便您认为是一个错误.

这打开了两种可能性:

>工程师可以确认错误 – 如果不知道他们会修复它,如果它是重复的,您可以请求原始状态信息
> DTS具有足够的知识,有能力查询实际的AV工程师如何解决这个问题

这样你就可以花更少的时间找到可能不会得到任何其他答案的地方.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...