【发布时间】:2016-12-01 23:43:00
【问题描述】:
我一直在开发具有自定义错误页面的 Spring MVC 应用程序,这些页面返回一般错误消息和堆栈跟踪作为 HTML 注释。我目前正在使用 HTML5 的 Appcache 开发此应用程序的离线功能。我的清单是这样的:
CACHE MANIFEST
CACHE:
... my explicit entries (not relevant) ...
FALLBACK:
... some fallback entries (not relevant) ...
<!-- This next line is relevant --!>
/ pageNotFoundOffline.html
SETTINGS:
prefer-online
它应该在用户无法连接到服务器时提供先前缓存的 404 页面,但问题是它在发生错误时也提供此 404 页面,从而使已经实现的自定义错误页面完全无用应用程序。
我为什么要这样做?我希望每当用户尝试访问我的应用程序上的任何页面并且请求以 404 失败(因为没有可用的互联网连接或因为服务器已关闭)时,该用户被告知请求失败并且他或她正在被重定向到我们的离线功能,我还想在用户成功访问我们的服务器但发生内部错误(通过自定义错误页面)时通知用户。
这个问题有解决方法吗?,我想要完成的是缓存的 404 页面仅在出现 404 异常时提供,服务器返回的自定义错误页面在出现内部异常时显示错误。
【问题讨论】:
标签: html spring html5-appcache