You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vercel部署NestJS后端API后POST请求CORS问题解决

Vercel部署NestJS API时POST请求触发CORS错误的解决方法

问题场景

在Vercel平台部署NestJS后端API后,可正常访问首页,发送GET请求获取全部用户也能正常返回数据,但发送POST登录请求时触发CORS错误,控制台显示跨域请求被阻止。已确认NestJS的CORS配置正确,且该API在其他平台部署时无此问题。

当前vercel.json配置

{  
  "version": 2,  
  "name": "tasks-api",  
  "buildCommand": "npm start",  
  "installCommand": "npm install",  
  "regions": ["fra1"],  
  "builds": [  
    {  
      "src": "dist/main.js",  
      "use": "@vercel/node"  
    }  
  ],  
  "routes": [  
    {  
      "src": "/(.*)",  
      "dest": "dist/main.js",  
      "methods": ["GET", "POST", "PUT", "DELETE"]  
    }  
  ]
}

排查过程

最初怀疑是请求头配置问题,但排查后未发现异常。GET请求可正常执行,说明基础路由和服务运行正常,问题仅出现在POST请求场景。

解决方法

将项目的dist文件夹加入代码仓库。原因是Vercel不会像常规后端服务器那样自动构建NestJS项目生成dist文件,必须确保该文件夹已提前存在于仓库中,部署时才能正确加载编译后的代码,从而解决CORS相关的异常。

内容的提问来源于stack exchange,提问作者Ahmad_Yousif

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:50:42