W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Webpack 能夠?yàn)槠浼虞d的所有腳本添加 ?nonce
?。要啟用此功能,需要在引入的入口腳本中設(shè)置一個(gè) ?__webpack_nonce__
? 變量。應(yīng)該為每個(gè)唯一的頁面視圖生成和提供一個(gè)唯一的基于 hash 的 ?nonce
?,這就是為什么 ?__webpack_nonce__
? 要在入口文件中指定,而不是在配置中指定的原因。注意,?__webpack_nonce__
? 應(yīng)該是一個(gè) base64 編碼的字符串。
在 entry 文件中:
// ...
__webpack_nonce__ = 'c29tZSBjb29sIHN0cmluZyB3aWxsIHBvcCB1cCAxMjM=';
// ...
注意,默認(rèn)情況下不啟用 ?CSP
?。需要與文檔(document)一起發(fā)送相應(yīng)的 CSP header 或 meta 標(biāo)簽 ?<meta http-equiv="Content-Security-Policy" ...>
?,以告知瀏覽器啟用 CSP。以下是一個(gè)包含 CDN 白名單 URL 的 CSP header 的示例:
Content-Security-Policy: default-src 'self'; script-src 'self'
https://trusted.cdn.com;
有關(guān) CSP 和 nonce 屬性的更多信息,請查看頁面底部的 延伸閱讀 部分。
webpack 還能夠使用 Trusted Types 來加載動(dòng)態(tài)構(gòu)建的腳本,遵守 CSP ?require-trusted-types-for
? 指令的限制??刹榭?nbsp;?output.trustedTypes
? 配置項(xiàng)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: