2012-12-20 41 views
2

我开始使用javascript和HTML5游戏编程,而我发现的第一个麻烦是关于资源文件。基于网络的JavaScript游戏中的资源文件

虽然我的游戏在图像和声音上有很多MB,但每当游戏开始时,服务器和客户端都会下载它们。

那么,在一般的方法,我如何保存所有需要的文件到本地文件夹,并在运行时恢复它们?

+0

谷歌appCache。 – mpm

+2

连接它们(使用图像的精灵),压缩它们,让它们被缓存。 – Bergi

+0

如何使用HTML5应用程序缓存? html5rocks.com/en/tutorials/appcache/beginner – SaschaM78

回答

1

您将无法将文件保存到本地文件夹,然后从您的网站使用它们 - 出于安全原因,浏览器不允许这样做。

如果您想将游戏作为网站提供,而不是用户下载并在本地运行,您可以做的是在所有内容上设置远期过期标题,这会告诉浏览器缓存内容直到该日期。然后,您的用户在下次访问您的网站玩游戏时不必下载资源。

雅虎有some good reads在网站上的表现,讨论这一点。

为了提高性能,还应确保启用gzip,这可以大大减少响应请求必须发送的数据量。如果您需要下载大量数据,这一点尤其重要。

由于您的问题标记为HTML5,您还可以查看HTML5 application cache,它可以让您缓存本地各种资源,包括图像,音频等。Here是一个很好的资源/教程,帮助您入门。值得注意的是,虽然应用程序缓存在旧版浏览器中的支持有限,但expire头文件在相当长一段时间内得到了支持。因此,根据您需要的浏览器支持,您将不得不考虑采取什么方法。