Skip to content
我们的赞助商
使用 Vercel 部署

与 Vercel Function 集成

Vercel Function 默认支持 Web Standard Framework,因此您可以在 Vercel Function 上运行 Elysia 而无需任何额外配置。

  1. src/index.ts 创建一个文件
  2. src/index.ts 中,创建或导入现有的 Elysia 服务器
  3. 将 Elysia 服务器作为默认导出
typescript
import { Elysia, t } from 'elysia'

export default new Elysia()
    .get('/', () => 'Hello Vercel Function')
    .post('/', ({ body }) => body, {
        body: t.Object({
            name: t.String()
        })
    })
  1. 添加构建脚本,使用 tsdown 或类似工具将代码打包成单个文件
json
{
	"scripts": {
		"build": "tsdown src/index.ts -d api --dts"
	}
}
  1. 创建 vercel.json 以将所有端点重写到 Elysia 服务器
json
{
    "$schema": "https://openapi.vercel.sh/vercel.json",
    "rewrites": [
		{
			"source": "/(.*)",
			"destination": "/api"
		}
    ]
}

此配置将所有请求重写到 /api 路由,这是 Elysia 服务器定义的位置。

Elysia 与 Vercel Function 配合使用无需额外配置,因为它默认支持 Web Standard Framework。

如果此方法无效

确保将 Elysia 服务器作为默认导出,并且构建输出是一个位于 /api/index.js 的单个文件。

您还可以使用 Elysia 的内置功能,如验证、错误处理、OpenAPI 等,就像在其他环境一样。

有关更多信息,请参阅 Vercel Function 文档