Pål*_*röm 3 javascript svelte sveltekit
如何访问 sveltekit 端点中的会话?我已经尝试过这个但没有运气:
import { get } from 'svelte/store';
import { getStores} from "$app/stores";
function getUser() { // <- call this at component initialization
const { session } = getStores();
return {
current: () => get(session).user
}
}
Run Code Online (Sandbox Code Playgroud)
会话存储正在填充src/hooks.js,正常流程是
handle,添加一些数据到event.locals.getSession,用于event.locals创建会话对象。此会话对象在客户端中可用作会话存储,并且在 ssr 期间可用(如果您使用这些load函数),但它在端点中不可用。
但端点中可用的是locals变量,该变量最初传递给getSession函数,因此您可以读取该变量。
export async function get({ locals }) {
// code goes here
}
Run Code Online (Sandbox Code Playgroud)
请注意,这意味着本地会话和客户端会话之间没有同步,如果您向会话添加某些内容,端点将无法使用它。要处理这个问题,您必须向 cookie 添加新数据并在函数中解析它handle。
| 归档时间: |
|
| 查看次数: |
8503 次 |
| 最近记录: |