useRequestFetch

Исходный код
Передача контекста запроса и заголовков при серверных вызовах fetch через композабл useRequestFetch.

Композабл useRequestFetch передаёт контекст запроса и заголовки при выполнении запросов fetch на сервере.

В браузере fetch сам подставляет нужные заголовки. При запросе во время SSR по соображениям безопасности заголовки нужно передавать вручную.

Заголовки, которые не предназначены для пересылки, не попадут в запрос. К таким относятся, например: transfer-encoding, connection, keep-alive, upgrade, expect, host, accept
Композабл useFetch внутри использует useRequestFetch, чтобы автоматически передавать контекст и заголовки запроса.
<script setup lang="ts">
// Заголовки клиента пересылаются в обработчик `/api/cookies`
// Результат: { cookies: { foo: 'bar' } }
const requestFetch = useRequestFetch()
const { data: forwarded } = await useAsyncData(() => requestFetch('/api/cookies'))

// Здесь заголовки не пересылаются
// Результат: { cookies: {} }
const { data: notForwarded } = await useAsyncData(() => $fetch('/api/cookies'))
</script>
В браузере при клиентской навигации useRequestFetch ведёт себя так же, как обычный $fetch.