Flash 是否可以使闪存缓存成为大型声音资产?

Flash 是否可以使闪存缓存成为大型声音资产?,flash,caching,cookies,audio,streaming,Flash,Caching,Cookies,Audio,Streaming,我用Flash(AS3/Flex SDK/MXMLC)编写了一个游戏,可以从我的服务器上播放音乐和声音文件 我很担心带宽-音频组件接近3MB,如果游戏变得流行,它将真的增加带宽费用 有没有办法在音频组件下载后将其闪存缓存,而不是在每次游戏加载到同一台PC上时将其流式存储 我知道SharedObjects(“cookies”),但我不认为有办法在其中存储二进制数据。。。还是有?当你说“流”时,我想你是指通过HTTP进行渐进式下载 首先,您需要确保从服务器发送的媒体资产带有符合您目标的适当缓存头。如

我用Flash(AS3/Flex SDK/MXMLC)编写了一个游戏,可以从我的服务器上播放音乐和声音文件

我很担心带宽-音频组件接近3MB,如果游戏变得流行,它将真的增加带宽费用

有没有办法在音频组件下载后将其闪存缓存,而不是在每次游戏加载到同一台PC上时将其流式存储

我知道SharedObjects(“cookies”),但我不认为有办法在其中存储二进制数据。。。还是有?

当你说“流”时,我想你是指通过HTTP进行渐进式下载

首先,您需要确保从服务器发送的媒体资产带有符合您目标的适当缓存头。如果这些文件对缓存不友好,则不会缓存文件。此外,查询字符串通常会阻止客户端缓存

在这方面,Flash播放器并没有什么神奇之处——一切都应该像一个普通的网页一样工作

您可能想考虑在廉价的ISH(类似或)上托管大型、静态媒体资产,这样可以减少不需要应用逻辑的批量传输的成本。 受评论启发的更新:这里有一个可能的大纲供您在探索中遵循

  • 首先要弄清楚什么样的缓存正在发生,什么样的缓存没有发生
  • 清除浏览器缓存
  • 在游戏中浏览一个用例
  • 再看一遍,期望看到相同的内容被使用
  • 检查web服务器日志文件。第一组请求都应该有HTTP 200响应代码。对于第二组请求,对于已经交付的文件的“可缓存”请求,您应该看到nothing或HTTP 304(一个仅用于查看缓存内容是否有效的请求)。如果您看到相同的请求集,所有请求均为200 OK,则不会发生缓存
  • 了解有关缓存的更多信息
  • 安装一个FireFox插件,比如TamperData,观察缓存头
  • 阅读说明书,了解它。RFC2616
  • 实验
  • 如果您已经在缓存内容,但只是没有意识到这一点,我不会感到惊讶

    当你说“流”时,我想你是指通过HTTP进行渐进式下载

    首先,您需要确保从服务器发送的媒体资产带有符合您目标的适当缓存头。如果这些文件对缓存不友好,则不会缓存文件。此外,查询字符串通常会阻止客户端缓存

    在这方面,Flash播放器并没有什么神奇之处——一切都应该像一个普通的网页一样工作

    您可能想考虑在廉价的ISH(类似或)上托管大型、静态媒体资产,这样可以减少不需要应用逻辑的批量传输的成本。 受评论启发的更新:这里有一个可能的大纲供您在探索中遵循

  • 首先要弄清楚什么样的缓存正在发生,什么样的缓存没有发生
  • 清除浏览器缓存
  • 在游戏中浏览一个用例
  • 再看一遍,期望看到相同的内容被使用
  • 检查web服务器日志文件。第一组请求都应该有HTTP 200响应代码。对于第二组请求,对于已经交付的文件的“可缓存”请求,您应该看到nothing或HTTP 304(一个仅用于查看缓存内容是否有效的请求)。如果您看到相同的请求集,所有请求均为200 OK,则不会发生缓存
  • 了解有关缓存的更多信息
  • 安装一个FireFox插件,比如TamperData,观察缓存头
  • 阅读说明书,了解它。RFC2616
  • 实验

  • 如果您已经在缓存内容,但只是没有意识到这一点,我不会感到惊讶

    MP3文件的“适当缓存头”是什么?在flash代码中,我通过URL请求获取此文件-缓存后如何引用它?第一个问题:这取决于您的需要。你的mp3文件经常改变吗?还是永远不会?定期?或第二个问题:这就是缓存的魔力!你不必担心。您请求资源(),浏览器为您管理缓存。作为一名HTML、Flex或其他编码人员,您不必担心这一点。请确保您不会通过使用查询字符串(动态内容的指示,因此不可缓存)之类的奇怪操作来“破坏”缓存。我已经用更多细节更新了答案。MP3文件的“适当缓存头”是什么?在flash代码中,我通过URL请求获取此文件-缓存后如何引用它?第一个问题:这取决于您的需要。你的mp3文件经常改变吗?还是永远不会?定期?或第二个问题:这就是缓存的魔力!你不必担心。您请求资源(),浏览器为您管理缓存。作为一名HTML、Flex或其他编码人员,您不必担心这一点。只需确保您不会通过使用查询字符串(表示动态内容,因此不可缓存)之类的奇怪操作来“破坏”缓存。我已经用更多细节更新了答案。