我编写了一个 Web 应用程序,它通过 http 提供媒体文件以在 html5 音频元素中播放。在提供媒体文件之前,服务器会检查是否为 cookie 提供了当前 PHP 会话 ID,如下所示:
PHPSESSID=3u90bfmqepd14s4rvslmrv69d1
似乎 IE/Firefox/Chrome 都将 cookie 与对音频文件的请求一起发送,但是在 OSX Safari 中,请求是使用不同的用户代理字符串(包含“quicktime”)发送的,并且没有 cookie。这大概是因为 quicktime 负责浏览器的音频播放功能,不幸的是浏览器中设置的 cookie 没有被保留。
我是否必须向客户端发出一个临时访问代码,该代码可以与媒体文件请求一起通过查询字符串传递?或者有没有更简单的方法来解决这个问题?
谢谢阅读