【发布时间】:2018-07-31 19:55:05
【问题描述】:
我有一个 webpack 开发配置,我的前端开发服务器运行在 8080 上,我的后端服务器运行在端口 3000 上。
所以在开发模式下,我的 webpack 开发服务器配置如下:
proxy: {
'/api': 'http://localhost:3000',
}
如何在为我的前端构建的静态文件提供服务的 prod 服务器中做同样的事情?
我的 prod 服务器有以下代码,为我的前端的静态文件提供服务:
const proxy = require('http-proxy-middleware')
app.use(express.static(dir))
/**
* Redirect everything that starts with /api/* to the backend rest server
*/
app.use('/api', proxy({ target: backendUrl }))
app.get('*', (req, res) => {
res.sendFile(path.resolve(dir + '/index.html'))
})
这不起作用,因为代理似乎丢失了 cookie(与使用 webpack 的代理不同,evyrhthing 工作)。
我是否以正确的方式解决这个问题?
【问题讨论】:
-
哪些 cookie 丢失了,后端的还是 prod 的?我尝试代理到 google.com,但我找回了 google 的 cookie。
-
前端 cookie 丢失。我想因为我得到未经授权的回复......
标签: javascript node.js express webpack