Svelte中任意请求触发额外GET请求的异常问题咨询
问题:执行POST/DELETE等请求后自动触发同URL的GET请求
- 无论使用
POST、DELETE等任意请求方法访问任意URL,都会额外触发一次该URL的GET请求。例如调用DELETE /items/:id后,会自动触发GET /items/:id,导致关联的Svelte页面因输入数据为undefined而报错。 - 测试过多个页面与请求方法,在端点开头添加
console.log后,该异常行为始终一致。 - 未使用任何钩子,请求后也未刷新页面,所有
fetch调用都封装在仅通过DOM事件触发的函数中,脚本根目录无相关自动执行代码。
测试用端点示例
DELETE端点
export const DELETE = async ({params}) => { await meta.findOneAndDelete({url: params.url}) return {} }
极简POST端点
export const POST = async () => { return {} }
通过点击事件触发fetch(/items/${url}, {method: 'POST'})调用端点时,每次都会触发GET /items/:url。需要说明的是,这些GET请求在浏览器开发者工具中不可见,仅能通过GET端点中的console.log输出及服务器控制台的错误信息观测到。
内容的提问来源于stack exchange,提问作者DSR
相关产品推荐
相关产品推荐

