C# 如何使用html5获得完整的离线支持

C# 如何使用html5获得完整的离线支持,c#,asp.net-mvc,html,offline-caching,manifest.cache,C#,Asp.net Mvc,Html,Offline Caching,Manifest.cache,这一直困扰着我,我有一个需要离线支持的.NETMVC应用程序。我正在将清单文件动态呈现为视图 在进行页面刷新时,我观察到- 第一次装的东西都是新鲜的。 第二次,浏览器Chrome仅对清单文件发出请求。 现在,在所有后续请求中,只有Manifest文件被请求,服务器返回200响应,其他文件从缓存中获取。 这并没有给我完全的脱机支持,因为浏览器仍在向服务器发出请求。理想情况下,如果应用程序支持脱机功能,那么当我的IIS停止时,它应该仍然可以工作,对吗 为了解决这个问题,我添加了一个2小时的到期日,例

这一直困扰着我,我有一个需要离线支持的.NETMVC应用程序。我正在将清单文件动态呈现为视图

在进行页面刷新时,我观察到-

第一次装的东西都是新鲜的。 第二次,浏览器Chrome仅对清单文件发出请求。 现在,在所有后续请求中,只有Manifest文件被请求,服务器返回200响应,其他文件从缓存中获取。 这并没有给我完全的脱机支持,因为浏览器仍在向服务器发出请求。理想情况下,如果应用程序支持脱机功能,那么当我的IIS停止时,它应该仍然可以工作,对吗

为了解决这个问题,我添加了一个2小时的到期日,例如,仅在清单文件中添加。这让我的问题在两个方面变得更糟-

浏览器重新联机时不会获取最新数据,除非清单文件过期。 2小时后,如果应用程序仍处于脱机状态,则会返回404错误,原因是清单文件已过期,服务器已关闭。
浏览器的可能副本应该会不断向服务器发出清单文件的请求,正如我在之前询问此问题时指出的,您需要调查的问题是,为什么您从一个不在线的服务器获得404。您应该能够获得404的唯一方法是有一个服务器发送响应。这只是一个假设,我获得404是因为当我的IIS停止时,我的主机仍然可用。因此,它可以访问该主机,但找不到该文件。理想情况下,如果我通过互联网访问主机,如果我没有实时的互联网连接,它的行为会有所不同。你需要一个实际的web服务器来获得404。404是一种HTTP状态,只有收到HTTP响应时才有404。如果完全切断Chrome与服务器/互联网的连接,应用程序还能工作吗?可能存在的浏览器重复应该会继续向服务器请求清单文件,这是您需要调查的问题,正如我之前在你问起这个问题时指出的,这就是为什么你从一个不在线的服务器上得到404。您应该能够获得404的唯一方法是有一个服务器发送响应。这只是一个假设,我获得404是因为当我的IIS停止时,我的主机仍然可用。因此,它可以访问该主机,但找不到该文件。理想情况下,如果我通过互联网访问主机,如果我没有实时的互联网连接,它的行为会有所不同。你需要一个实际的web服务器来获得404。404是HTTP状态,只有收到HTTP响应时才有404。如果完全切断Chrome与服务器/互联网的连接,应用程序还能工作吗?