You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

18 lines
578 B

import type { H3Event } from "h3";
import type { getCurrentUser } from "#server/service/auth";
type CurrentUser = Exclude<Awaited<ReturnType<typeof getCurrentUser>>, null>;
/**
* 设置当前登录用户到 event.context
*/
export function setContextUser(event: H3Event, user: CurrentUser): void {
(event.context as Record<string, unknown>).user = user;
}
/**
* 从 event.context 获取当前登录用户
*/
export function getContextUser(event: H3Event): CurrentUser | undefined {
return (event.context as Record<string, unknown>).user as CurrentUser | undefined;
}