File tree Expand file tree Collapse file tree 1 file changed +44
-1
lines changed
Expand file tree Collapse file tree 1 file changed +44
-1
lines changed Original file line number Diff line number Diff line change @@ -38,7 +38,7 @@ export default defineConfig({
3838- ** 默认值** : 需要手动设置
3939- ** 描述** : 是否启用 SRI(子资源完整性)功能,以及可选的哈希算法配置
4040
41- 当设置为 ` true ` 时,插件会:
41+ 当设置为 ` true ` 或 ` {} ` 时,插件会:
4242
43431 . 扫描构建后的 HTML 文件
44442 . 为所有带有 ` src ` 属性的 ` <script> ` 标签添加 ` integrity ` 属性
@@ -59,4 +59,47 @@ security: {
5959
6060### 输入 HTML
6161
62+ ``` html
63+ <!DOCTYPE html>
64+ <html >
65+ <head >
66+ <link rel =" stylesheet" href =" /assets/app.css" >
67+ </head >
68+ <body >
69+ <script src =" /assets/app.js" ></script >
70+ </body >
71+ </html >
6272```
73+
74+ ### 输出 HTML(启用 SRI 后)
75+
76+ ``` html
77+ <!DOCTYPE html>
78+ <html >
79+ <head >
80+ <link rel =" stylesheet" href =" /assets/app.css" integrity =" sha512-ABC123..." crossorigin =" anonymous" >
81+ </head >
82+ <body >
83+ <script src =" /assets/app.js" integrity =" sha512-XYZ789..." crossorigin =" anonymous" ></script >
84+ </body >
85+ </html >
86+ ```
87+
88+ ## 安全说明
89+
90+ SRI(子资源完整性)是一种安全特性,允许浏览器验证获取的资源(例如从 CDN 获取的资源)没有被恶意修改。当浏览器加载资源时,会计算资源的哈希值并与 ` integrity ` 属性中指定的哈希值进行比较。如果哈希值不匹配,浏览器将拒绝加载该资源。
91+
92+ 对于 ` <script> ` 标签来说,结果为拒绝执行其中的代码;对于 CSS links 来说,结果为不加载其中的样式。
93+
94+ 关于 SRI 的更多内容,可以查看 [ Subresource Integrity - MDN] ( https://developer.mozilla.org/zh-CN/docs/Web/Security/Subresource_Integrity ) 。
95+
96+ ## 注意事项
97+
98+ 1 . 此插件仅在生产构建时生效,开发环境会自动跳过
99+ 2 . 需要确保资源文件在构建输出目录中可访问
100+ 3 . ` integrity ` 属性必须与 ` crossorigin ` 属性配合使用才能正常工作
101+
102+ ## 许可证
103+
104+ MIT
105+
You can’t perform that action at this time.
0 commit comments