From 9fb9fcd13488e4306cd3c9fed52933bb6cd6d8f6 Mon Sep 17 00:00:00 2001 From: Eddie Wang Date: Mon, 15 Jan 2018 17:51:35 -0500 Subject: [PATCH] Add webpack-subresource-integrity plugin (#789) * Add subresource integrity * add anonymous crossOriginLoading * add missing , --- package.json | 1 + webpack_config/webpack.base.js | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index ac09053d..248b7bac 100644 --- a/package.json +++ b/package.json @@ -121,6 +121,7 @@ "webpack-dev-middleware": "2.0.4", "webpack-hot-middleware": "2.21.0", "webpack-sources": "1.0.1", + "webpack-subresource-integrity": "1.0.3", "worker-loader": "1.1.0" }, "scripts": { diff --git a/webpack_config/webpack.base.js b/webpack_config/webpack.base.js index 798248a0..a5e78758 100644 --- a/webpack_config/webpack.base.js +++ b/webpack_config/webpack.base.js @@ -4,6 +4,8 @@ const webpack = require('webpack'); const HtmlWebpackPlugin = require('html-webpack-plugin'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const FaviconsWebpackPlugin = require('favicons-webpack-plugin'); +const SriPlugin = require('webpack-subresource-integrity'); + const config = require('./config'); const _ = require('./utils'); @@ -14,7 +16,8 @@ const webpackConfig = { output: { path: _.outputPath, filename: '[name].js', - publicPath: config.publicPath + publicPath: config.publicPath, + crossOriginLoading: "anonymous" }, resolve: { extensions: ['.ts', '.tsx', '.js', '.css', '.json', '.scss', '.less'], @@ -87,6 +90,10 @@ const webpackConfig = { ] }, plugins: [ + new SriPlugin({ + hashFuncNames: ['sha256', 'sha384'], + enabled: true + }), new HtmlWebpackPlugin({ title: config.title, template: path.resolve(__dirname, '../common/index.html'),