Reactjs 如何实现webpack dev server以共享来自服务器端呈现页面的cookie?
我目前正在构建reactjs应用程序,它使用服务器端cookie进行身份验证。 我正在尝试使用WebpackDevServer进行开发 在当前场景中,我在一个域上托管了webpack dev server,在另一个域上托管了应用程序服务器,但我需要在这两个域中共享cookie 我认为cookie不能跨不同的域工作,但有没有办法让它们在开发环境中共享cookie? 目前,我正在尝试在应用服务器的url中嵌入devserver的iframe。但是,由于它们具有不同的主机名,因此无法共享cookie。 然后,我发现Cookie可以在子域之间共享,但无法确定如何将本地主机下的不同端口分配给不同的子域Reactjs 如何实现webpack dev server以共享来自服务器端呈现页面的cookie?,reactjs,cross-domain,subdomain,webpack-dev-server,Reactjs,Cross Domain,Subdomain,Webpack Dev Server,我目前正在构建reactjs应用程序,它使用服务器端cookie进行身份验证。 我正在尝试使用WebpackDevServer进行开发 在当前场景中,我在一个域上托管了webpack dev server,在另一个域上托管了应用程序服务器,但我需要在这两个域中共享cookie 我认为cookie不能跨不同的域工作,但有没有办法让它们在开发环境中共享cookie? 目前,我正在尝试在应用服务器的url中嵌入devserver的iframe。但是,由于它们具有不同的主机名,因此无法共享cookie。
非常感谢您的建议和反馈。我最终使用webpack dev server的代理服务器功能解决了这个问题
//dev-server.js
var webpack = require('webpack')
var WebpackDevServer = require('webpack-dev-server')
var config = require('./webpack.config')
new WebpackDevServer(webpack(config), {
publicPath: config.output.publicPath,
hot: true,
inline: true,
historyApiFallback: true,
proxy: {
"**": "http://localhost:8000"
}
}).listen(3000, '0.0.0.0', function (err, result) {
if (err) {
console.log(err)
}
console.log('Listening at 0.0.0.0:3000')
});
通过这种方式,devServer(端口:3000)从服务器(端口:8000)呈现页面,允许前端从服务器接收和使用cookie。对于使用的用户,即通过命令行运行应用程序:
$ npm start
下面是解决此问题的package.json:
{
"name": "systematic",
"version": "0.1.0",
"private": true,
"dependencies": {
"...": "..."
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
"proxy": {
"/backend": {
"target": "http://localhost:8080"
}
}
}
我的后台运行地址在哪里