Next.js(3000端口)无法代理请求至5000端口Node.js后端求助
解决Next.js代理未转发请求到后端5000端口的问题
以下是针对该问题的排查和解决步骤:
验证package.json代理配置正确性
确保你的package.json中代理配置为:"proxy": "http://127.0.0.1:5000"注意不要遗漏
http://前缀,端口号需与后端保持一致(5000)。适配Next.js 13+ App Router的代理规则
若你使用Next.js 13及以上版本的App Router,package.json中的proxy字段不再生效,需在next.config.js中配置重写规则:module.exports = { async rewrites() { return [ { source: '/api/:path*', destination: 'http://127.0.0.1:5000/api/:path*' } ] } }检查前端请求路径写法
确认axios请求使用相对路径:axios.get('/api/chat')避免手动添加前端3000端口的绝对路径。
清理Next.js构建缓存
删除项目根目录下的.next文件夹,再重新启动前端服务,彻底清除构建缓存带来的影响。确认服务启动顺序
先启动Node.js后端服务(确保5000端口正常监听),再启动Next.js前端服务,避免前端启动时无法识别代理目标导致的配置失效。
内容的提问来源于stack exchange,提问作者Andy
相关产品推荐
相关产品推荐

