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

Nuxt 3部署Vercel时如何仅将单个端点设为Edge Function?

Nuxt 3 + Vercel 混合部署:单个端点用Edge Function方案

Nuxt 3(配合Nitro)完全支持这种混合部署需求,你之前的问题是配置方式的细节没做对,以下是正确的实现步骤:

1. 给单个API路由单独配置Edge运行时

在你的项目server/api/目录下,找到需要设为Edge Function的路由文件(比如server/api/my-edge-api.ts),直接在文件中导出config对象,示例代码:

// server/api/my-edge-api.ts
export default defineEventHandler(() => {
  return {
    type: "edge-function",
    message: "This endpoint runs on Vercel Edge Network"
  }
})

// 关键配置:指定该路由使用Edge运行时
export const config = {
  runtime: "edge"
}

如果是server/routes/下的服务器路由文件,同样可以用这个方式配置。

2. 全局保持Serverless默认配置

不要修改nuxt.config.ts中的nitro.preset,保持默认的vercel预设即可(该预设默认使用Serverless Function)。这样除了你单独配置的那个端点,其余所有API和服务器路由都会默认使用Serverless Function。

3. 验证部署结果

部署完成后,登录Vercel控制台,进入项目的「Functions」页面,就能看到目标端点被标记为Edge Function,其余端点则显示为Serverless Function。

注意事项

  • 确保你的Nuxt和Nitro版本是最新稳定版,旧版本可能对单个路由的Edge运行时配置支持不完善。
  • 该配置仅对Vercel平台生效,其他平台的Edge Function配置逻辑可能不同。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 23:32:06