05 · 实验 D

Server Action vs API Route

同一个'提交一段文本回显',左边用 API Route + fetch,右边用 Server Action。对比两者的写法与请求来源。

API Route + fetch

(未调用)

Server Action

(未调用)

关键认知

  • API Route:要自己定义 route.ts、在客户端 fetch、手动 JSON.stringify、手动处理 HTTP 状态码。
  • Server Action:一个 "use server" 函数即可, 客户端像调本地函数一样调用;还能直接访问数据库/密钥,且能联动 revalidatePath 刷新 UI。
  • 何时仍用 API Route:需要被第三方/非 Next 客户端调用的公开接口 (如给移动端、外部服务),或需要精细控制 HTTP 语义时。