如何在SvelteKit的api/+server.js中返回含Retry-After的自定义响应头?
解决SvelteKit中返回429状态码和Retry-After响应头的问题
你的代码错误在于Response构造函数的参数使用方式不正确,正确写法需要把包含状态码、响应头的配置对象放在第二个参数位置,且响应头要嵌套在headers字段中。
修正后的代码如下:
export async function POST(requestEvent) { // 与问题无关的代码 return new Response(null, { status: 429, headers: { 'Retry-After': '60' } }); }
说明:
- Response的第一个参数是响应体,若无需返回内容,传
null即可; - 第二个参数为配置对象,
status字段指定429状态码; - 响应头必须放在
headers对象内,Retry-After的值可以是字符串格式的数字,也可直接传数字(浏览器会自动处理格式)。
内容的提问来源于stack exchange,提问作者Marco
相关产品推荐
相关产品推荐

