我尝试通过 html5 音频标签播放一些 mp3 文件。对于桌面来说,这很好用(使用 Chrome),但对于移动浏览器(还有 Chrome(适用于 Android)),似乎存在一些困难:
我用一些密码保护了流,因此流服务器需要找到一个特殊的身份验证 cookie(spring security remember-me)。但不知何故,当移动浏览器通过音频标签访问 mp3 流时,它不会发送此 cookie。当我将流 URL 直接输入到地址栏时,一切正常。
当我搜索丢失的 cookie 时,我发现移动浏览器仍然发送一些 cookie(例如 JSESSIONID)但不是全部。进一步的调查(使用 PHP 的快速 PoC)显示移动浏览器似乎拒绝通过设置了 HttpOnly 标志的音频标签发送 cookie。所以我的问题是:
这是一种指定的行为,为什么移动版和桌面版(Chrome)之间存在差异,有没有办法从客户端控制行为?