如何在 SvelteKit 中获取加载功能的用户代理

How to get user agent on load function in SvelteKit

我想在load function上获取user agent来根据访问者是否googlebot选择是否进行服务器端渲染。

如何在 load function 中访问它?

我正在使用最新版本的 SvelteKit,即 1.0.0。

使用挂钩管理它。

src 文件夹中创建 hooks.js

export function getSession(request) {
    return {
        userAgent: request.headers['user-agent']
    }
}

然后你可以在你想要的每个组件的 load function 中使用它:

<script context="module">
    export async function load({ session }) {
        console.log(session.userAgent)
    }
</script>

请参阅 docs 中的挂钩部分以获取更多信息。