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

如何在SvelteKit的API目录中创建全匹配兜底路由?

在SvelteKit中为API目录创建全局兜底路由

要为/src/routes/api/下所有未定义的GET、POST、DELETE和PUT请求创建兜底路由,按以下步骤操作即可:

  1. 在src/routes/api/目录下创建名为[...catchall]+server.js(若用TypeScript则为.ts)的文件

    • [...catchall]是SvelteKit的全匹配路由参数,会捕获所有未被其他具体API路由覆盖的路径
  2. 在该文件中导出对应HTTP方法的处理函数,返回404错误响应:

import { error } from '@sveltejs/kit';

export function GET() {
    throw error(404, 'API endpoint not found');
}

export function POST() {
    throw error(404, 'API endpoint not found');
}

export function DELETE() {
    throw error(404, 'API endpoint not found');
}

export function PUT() {
    throw error(404, 'API endpoint not found');
}

核心逻辑

SvelteKit路由匹配遵循具体路由优先规则:如果已有定义的API路由(比如api/users/+server.js)能匹配请求路径,会优先触发该路由;只有当没有任何具体路由匹配时,这个兜底路由才会生效,处理对应的HTTP方法。

内容的提问来源于stack exchange,提问作者Anuj Subedi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 17:55:54