我正在尝试修改外部 API 的获取请求以包含自定义 header 。在尝试了多种方法之后,我在文档中看到 externalFetch 似乎可以用于修改请求,但问题是它永远不会被调用。我错过了什么?
export async function externalFetch(request) {
request.headers['authorization'] = 'HMAC 12.33';
console.log('hook headers', request);
request = new Request(
request
);
return fetch(request);
}
最佳答案
您必须使用fetch sveltekit 通过 load 为您提供的功能函数以便触发 externalFetch
,以下是 sveltekit 文档中的示例:
<!-- src/routes/blog/[slug].svelte -->
<script context="module">
/** @type {import('@sveltejs/kit').Load} */
export async function load({ params, fetch, session, stuff }) {
const response = await fetch(`https://cms.example.com/article/${params.slug}.json`);
return {
status: response.status,
props: {
article: response.ok && (await response.json())
}
};
}
</script>
关于javascript - 钩子(Hook)中的 SvelteKit externalFetch 函数永远不会被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69676914/