・「HTML - [Chrome 45+][Firefox 43+][Opera 32+] CDNからのXSSを防ぐ - Qiita
http://qiita.com/anqooqie/items/29177ece314ecdbc5f9a」 より
フォールバック
ファイルが改竄されていた場合、そのファイルはロードされないのでサイトの表示が崩れることになる。
JavaScriptについては以下のようなフォールバック策があるようだ。<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script> <script>window.jQuery.fn.modal || document.write('<script src="bootstrap.min.js"><\/script>')</script>
CSSについては以下のようなフォールバック策があるようだ。<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous"> <script> for (var i = 0; i < document.styleSheets.length; i++) { var sheet = document.styleSheets[i]; if (sheet.href == "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css") { var rules = sheet.rules ? sheet.rules : sheet.cssRules; if (rules.length == 0) { var link = document.createElement("link"); link.setAttribute("rel", "stylesheet"); link.setAttribute("href", "bootstrap.min.css"); document.getElementsByTagName("head")[0].appendChild(link); } } } </script>
関連:
・jQueryをロードする際のナイス!と思った書き方
http://dtp.jdash.info/archives/51941752.html
・SRI Hash Generator
https://www.srihash.org/