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

如何部署调用API Routes的Next.js应用 解决Vercel部署数据请求失败问题

Next.js 部署 Vercel 后 API Routes 请求失败解决方案
  • 最优方案:使用相对路径调用接口
    同域名下调用自身的 API Routes 无需填写完整域名,直接写相对路径即可,本地开发和 Vercel 部署环境会自动适配当前域名,示例写法:
    fetch('/api/your-endpoint')
    这是最推荐的方案,不需要额外配置任何环境变量,可自动适配所有部署环境
  • 方案二:使用 Vercel 内置环境变量拼接绝对路径
    如果你的业务场景必须使用绝对路径发起请求,可以直接用 Vercel 默认提供的系统环境变量 VERCEL_URL,无需手动配置:
    • 服务端逻辑(服务端组件、getServerSideProps、API Routes 内部调用等)直接使用即可,注意VERCEL_URL返回值不带https协议,需要手动拼接:
      fetch(https://${process.env.VERCEL_URL}/api/your-endpoint)
    • 客户端组件调用需要给环境变量添加 NEXT_PUBLIC_ 前缀,你可以在 Vercel 项目的环境变量配置页新增变量 NEXT_PUBLIC_APP_URL,值填写 https://${VERCEL_URL},重新部署后即可在客户端代码中使用:
      fetch(${process.env.NEXT_PUBLIC_APP_URL}/api/your-endpoint)
  • 方案三:手动配置域名到环境变量
    你可以在 Vercel 项目的「Settings - Domains」页面查到平台分配的默认部署域名,或者你绑定的自定义域名,将域名填写到项目环境变量中,代码中统一调用环境变量取值即可,避免硬编码域名导致多环境适配问题。

内容的提问来源于stack exchange,提问作者Naim Islam Antor

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 10:18:02