Web包开发服务器和express在同一端口上?
我在开发环境中遇到了跨域问题,Web包开发服务器在端口8080上运行,而express后端在端口5000上运行Web包开发服务器和express在同一端口上?,express,cross-domain,webpack-dev-server,Express,Cross Domain,Webpack Dev Server,我在开发环境中遇到了跨域问题,Web包开发服务器在端口8080上运行,而express后端在端口5000上运行 通过AJAX调用后端api方法会引发CORS错误 单击指向后端api的链接不会传递会话数据 这些问题是可以解决的,但我想知道,如果它们不在生产环境中发生(客户端和后端都将使用相同的端口),为什么还要麻烦呢 是否可以解决此问题(例如,通过在同一端口上运行dev server和express或任何其他方式?这就是我的工作原理: 我觉得大多数人都没有弹出他们的网页配置。。。如果您不知道这意
是否可以解决此问题(例如,通过在同一端口上运行dev server和express或任何其他方式?这就是我的工作原理: 我觉得大多数人都没有弹出他们的网页配置。。。如果您不知道这意味着什么,那么您可能还没有弹出您的网页配置,所以请在“未弹出”选项下查找 我会注意到,如果您使用的是
ng serve
而不是npm start
,则需要切换到npm start
,或者键入完整的命令ng serve--proxy config proxy.conf.json
,才能工作
另外在proxy.conf.json中:
{
"/api": {
"target": "http://localhost:3001",
"secure": false
},
"/oauth": {
"target": "http://localhost:3001",
"secure": false
},
"/foo": {
"target": "http://localhost:3002",
"secure": false
}
}
- 示例仅显示“/api”
- 但是,如果您有任何其他端点不是以/api开头的,那么您也需要添加它们。以防您没有意识到“/api”是一个路径识别字符串,而不仅仅是一个“设置”
{
"/api": {
"target": "http://localhost:3001",
"secure": false
},
"/oauth": {
"target": "http://localhost:3001",
"secure": false
},
"/foo": {
"target": "http://localhost:3002",
"secure": false
}
}