请求 Chrome 中的第二个视频流播放第一个视频

Requesting second video stream in Chrome plays the first video instead

在 .NET Core 中开发了一个应用程序来流式传输视频内容。与html5视频元素配合使用,206部分数据包功能(可以正确搜索)。一旦我尝试流式传输一个新的不同视频,Chrome 仍然播放第一个视频。

我在 IE 或 Firefox 中没有这个问题,坦率地说,去年在 Chrome 中工作正常。我怀疑他们最近在 Chrome 中改变了什么?

此外,软刷新、硬刷新或重置缓存仍将仅播放第一个视频。只有打开一个新的 chrome 选项卡才能 "reset" 并允许我播放第二个视频,反之亦然。

当 "incorrect" 第一个视频正在播放时,如果我直接通过右下角的 Chrome HTML5 播放器图标下载,它会下载正确的第二个视频,这是均匀的更奇怪!

这里有更多信息:

已修复。这是导致问题的原因:

我对视频的请求是 GET 到 /Download?uid=12345,它又重定向到 /GetItem(12345 将存储在 cookie 中)。

对部分 206 数据包的后续请求也将 GET /GetItem。读了一些书,尝试了书中的所有内容,并意识到 Google Chrome 可能需要为每个新请求 查看 不同的 URL,或者它将播放较旧的缓存流。

解决方案:

我将重定向更改为 /GetItem?uid=someRandomNumber(每次调用此操作时都会更改),现在,当我在每个视频之间单击时,视频将正确流式传输。