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

Next.js 14(App目录)项目能否在Vercel同时运行Node.js与Python无服务器函数?

在Vercel部署的Next.js 14项目中同时运行Node.js与Python无服务函数

完全可以在单个采用App目录模式的Next.js 14项目中,通过Vercel部署同时运行Node.js和Python无服务器函数,Vercel原生支持多语言无服务函数共存,无需额外复杂配置。

具体实现步骤

  • 目录结构规范:在src/app/api下为Python函数单独创建子目录,比如python-demo/route.py——Vercel会根据文件后缀.py自动识别并启用Python运行环境,和Node.js的route.ts函数互不干扰。
  • Python函数写法:可以直接使用Vercel原生的Python无服务函数格式,无需依赖FastAPI或Flask(当然如果有框架需求也兼容)。示例代码如下:
import json

def GET(request):
    # 处理GET请求逻辑
    response_data = {"message": "来自Python无服务函数的响应"}
    return Response(json.dumps(response_data), status=200, headers={"Content-Type": "application/json"})

def POST(request):
    # 处理POST请求逻辑
    body = json.loads(request.body)
    return Response(json.dumps({"received": body}), status=200, headers={"Content-Type": "application/json"})
  • 依赖管理:在项目根目录创建requirements.txt文件,列出Python依赖包(比如requests、pandas等),Vercel部署时会自动安装这些依赖。
  • Node.js函数保持原有写法:继续使用src/app/api/xxx/route.ts的格式编写Node.js无服务函数,比如:
export async function GET() {
  return Response.json({ message: "来自Node.js无服务函数的响应" });
}

部署说明

部署时无需额外配置Vercel项目设置,只要文件结构符合上述规范,Vercel会自动为不同后缀的函数分配对应的运行环境(Node.js用于.ts/.js,Python用于.py),两者可以独立响应各自的API请求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 16:03:15