【发布时间】:2018-01-16 11:02:24
【问题描述】:
我在热模块重新加载时遇到了 CORS 问题 - 开发服务器。我在端口 3000 上使用开发服务器,但应用程序是从另一个端口 http://localhost:52024/ 提供服务的。
这是我遇到的错误(Chrome、Windows 10):
GET http://localhost:3000//sockjs-node/info?t=1502216500095 404 (Not Found)
XMLHttpRequest cannot load http://localhost:3000//sockjs-node/info?t=1502216500095. The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. Origin 'http://localhost:52024' is therefore not allowed access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
[WDS] Disconnected!
实际上我得到了两个错误:第一个是由路径中的双斜杠//引起的,另一个是与CORS相关的错误。这是我的webpack.config.js:
const webpack = require('webpack'),
path = require('path');
module.exports = {
entry: {
'admin': ['webpack-dev-server/client?http://localhost:3000', 'webpack/hot/only-dev-server', './src/admin/index.js']
},
output: {
path: path.join(__dirname, 'admin/dist'),
filename: '[name].js',
publicPath: 'http://localhost:3000'
},
module: {
rules: [
{ test: /\.js$/, include: path.join(__dirname, 'src'), use: ['react-hot-loader/webpack', 'babel-loader'] },
{ test: /\.css/, use: ['style-loader', 'css-loader'] },
{ test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader'] },
{ test: /\.woff(2)?(\?v=[0-9]\.[0-9]\.[0-9])?$/, use: ['url-loader?limit=10000&mimetype=application/font-woff'] },
{ test: /\.(ttf|eot|svg)(\?v=[0-9]\.[0-9]\.[0-9])?$/, use: ['file-loader'] },
{ test: /\.(png|jpg)$/, use: ['url-loader?limit=8192'] }
]
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
],
devtool: 'cheap-module-eval-source-map',
devServer: {
port: 3000,
hot: true,
inline: true,
headers: {
"Access-Control-Allow-Origin": "*"
}
}
};
我开始使用 webpack:
webpack-dev-server --config webpack.config.js --progress
有什么想法吗?我正在使用webpack 3.5.1 和webpack-dev-server 2.7.1 谢谢。
【问题讨论】:
标签: javascript webpack cors webpack-dev-server hot-module-replacement