useRequestFetch
使用 useRequestFetch 组合函数转发请求上下文和头部,以便进行服务器端的获取请求。
您可以使用 useRequestFetch
在进行服务器端获取请求时转发请求上下文和头部。
在进行客户端获取请求时,浏览器会自动发送所需的头部。 然而,在服务器端渲染期间进行请求时,由于请求是在服务器上发起的,我们需要手动转发头部。
不需要转发的头部将不会被包含在请求中。这些头部包括,例如:
transfer-encoding
、connection
、keep-alive
、upgrade
、expect
、host
、accept
useFetch
组合函数在内部使用 useRequestFetch
自动转发请求上下文和头部。<script setup lang="ts">
// 这将把用户的头部转发到 `/api/foo` 事件处理程序
// 结果: { 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
一样。