类 AppCacheManifestTransformer
- java.lang.Object
- org.springframework.web.servlet.resource.ResourceTransformerSupport
- org.springframework.web.servlet.resource.AppCacheManifestTransformer
- 所有已实现的接口:
ResourceTransformer
public class AppCacheManifestTransformer extends ResourceTransformerSupport
AResourceTransformer
implementation that helps handling resources within HTML5 AppCache manifests for HTML5 offline applications.This transformer:
- modifies links to match the public URL paths that should be exposed to clients, using configured
ResourceResolver
strategies - appends a comment in the manifest, containing a Hash (e.g. "# Hash: 9de0f09ed7caf84e885f1f0f11c7e326"), thus changing the content of the manifest in order to trigger an appcache reload in the browser.
All files that have the ".appcache" file extension, or the extension given in the constructor, will be transformed by this class. This hash is computed using the content of the appcache manifest and the content of the linked resources; so changing a resource linked in the manifest or the manifest itself should invalidate the browser cache.
In order to serve manifest files with the proper
"text/manifest"
content type, it is required to configure it withcontentNegotiationConfigurer.mediaType("appcache", MediaType.valueOf("text/manifest")
in aWebMvcConfigurer
.- 从以下版本开始:
- 4.1
- 作者:
- Brian Clozel
- 另请参阅:
- HTML5 offline applications spec
构造器概要
构造器 构造器 说明 AppCacheManifestTransformer()
Create an AppCacheResourceTransformer that transforms files with extension ".appcache".AppCacheManifestTransformer(String fileExtension)
Create an AppCacheResourceTransformer that transforms files with the extension given as a parameter.
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 Resource
transform(HttpServletRequest request, Resource resource, ResourceTransformerChain chain)
Transform the given resource.从类继承的方法 org.springframework.web.servlet.resource.ResourceTransformerSupport
getResourceUrlProvider, resolveUrlPath, setResourceUrlProvider, toAbsolutePath
构造器详细资料
AppCacheManifestTransformer
public AppCacheManifestTransformer()
Create an AppCacheResourceTransformer that transforms files with extension ".appcache".
AppCacheManifestTransformer
public AppCacheManifestTransformer(String fileExtension)
Create an AppCacheResourceTransformer that transforms files with the extension given as a parameter.
方法详细资料
transform
public Resource transform(HttpServletRequest request, Resource resource, ResourceTransformerChain chain) throws IOException
从接口复制的说明:ResourceTransformer
Transform the given resource.- 参数:
request
- the current requestresource
- the resource to transformchain
- the chain of remaining transformers to delegate to- 返回:
- the transformed resource (never
null
) - 抛出:
IOException
- if the transformation fails