我得有相似的名字存储在CDN(Rackspace公司CloudFiles)通话录音:下载文件,并设置下载的文件名
KPOWIEJFIE2034020SVN10ASKZALBMRI.mp3
(他们” Twilio调用SID)。
我的应用程序(CakePHP)显示这些录音的列表,并使用<audio>
标记来允许它们在CDN上的页面上播放。我需要添加选项直接下载文件,但我想要下载名为更像这样的文件:
从Alex致电Firm,Inc,2011年8月19日下午4:00。 mp3
我知道如何使用PHP和readfile()将名称设置为任何我想要的名称,但这需要通过我的VPS流式传输文件数据。除了为带宽(一次通过CDN和一次通过我的VPS)进行两次计费之外,这将破坏CDN(速度和可用性)文件的目的。为了安全起见,我只用CDN上的呼叫SID命名文件。
我可以在浏览器端以某种方式做到这一点吗? JavaScript可以即时更改下载文件的名称?
我感谢任何帮助!
您必须以某种方式更改发送到用户浏览器的“Content-disposition:”标头。该标题可用于设置文件名和创建日期等内容。 我不知道如何以这种方式修改标题,但可以通过在服务器上缓存录制内容来节省一些带宽,以便您只收取一次双倍带宽的费用。 –
https://forums.aws.amazon.com/thread.jspa?threadID=44958&tstart=0 - 这可能有帮助,我不确定你可以在Rackspace上做什么 –