MST
星途 面试题库

面试题:SvelteKit中API路由如何定义基础路径

在SvelteKit项目里,假设要为所有API路由定义一个基础路径,例如/api,你该如何配置?请描述具体的步骤和涉及到的文件及代码片段。
14.0万 热度难度
前端开发Svelte

知识考点

AI 面试

面试题答案

一键面试
  1. 创建 hooks.js 文件
    • 在项目的 src/routes 目录下创建一个 hooks.js 文件(如果不存在的话)。
  2. 编写代码配置基础路径
    • 打开 src/routes/hooks.js 文件,并添加以下代码:
export const handle = async ({ event, resolve }) => {
    if (event.url.pathname.startsWith('/api')) {
        event.url.pathname = event.url.pathname.replace('/api', '');
    }
    return resolve(event);
};

这段代码的作用是:当请求的路径以 /api 开头时,将 /api 从路径中移除,这样在后续处理 API 路由时,就好像请求的路径是从移除 /api 后的路径开始的。这样就实现了为所有 API 路由定义 /api 作为基础路径。