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

使用Svelte RequestHandler创建API端点遇类型错误求助

解决Svelte Kit API端点RequestHandler类型错误问题

问题原因

你写的代码返回的是普通对象{body: string; status: number},但Svelte Kit的RequestHandler要求返回值必须是标准的Response实例(或Promise包裹的Response),普通对象缺少Response类型必需的headers、ok等属性,因此触发TypeScript类型错误。

解决方案1:使用Svelte Kit内置的json函数(推荐)

导入@sveltejs/kit提供的json辅助函数,它会自动构造符合要求的Response对象,同时处理Content-Type等响应头:

import type { RequestHandler } from '@sveltejs/kit';
import { json } from '@sveltejs/kit';

export const get: RequestHandler = () => {
    return json('Hello from api.', { status: 200 });
};

解决方案2:手动构造Response实例

如果不想用辅助函数,可以直接创建标准的Response对象,明确指定响应头和状态码:

import type { RequestHandler } from '@sveltejs/kit';

export const get: RequestHandler = () => {
    return new Response(JSON.stringify('Hello from api.'), {
        status: 200,
        headers: {
            'Content-Type': 'application/json; charset=utf-8'
        }
    });
};

验证

修改后启动项目,访问对应API路径(比如/api,因为你的文件是index.json.ts),即可正常获取响应。

内容的提问来源于stack exchange,提问作者Idan Zehavi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 00:05:27