resources.Fingerprint
Syntax
resources.Fingerprint [算法] 资源
Returns
resource.Resource
Alias
fingerprint
{{ with resources.Get "js/main.js" }}
{{ with . | fingerprint "sha256" }}
<script src="{{ .RelPermalink }}" integrity="{{ .Data.Integrity }}" crossorigin="anonymous"></script>
{{ end }}
{{ end }}
Hugo 将其渲染为类似以下内容:
<script src="/js/main.62e...df1.js" integrity="sha256-Yuh...rfE=" crossorigin="anonymous"></script>
虽然 resources.Fingerprint
函数通常与 CSS 和 JavaScript 资源一起使用,但你可以将其用于任何资源类型。
哈希算法可以是 md5
、sha256
(默认)、sha384
或 sha512
之一。
在对资源内容进行加密哈希后:
.Permalink
和.RelPermalink
方法返回的值包括哈希摘要- 资源的
.Data.Integrity
方法返回一个 子资源完整性(SRI)值,由哈希算法的名称、一个连字符和 base64 编码的哈希摘要组成