cookie-utils.ts 708 B

12345678910111213141516171819202122232425262728
  1. import type { EventHandlerRequest, H3Event } from 'h3';
  2. import { deleteCookie, getCookie, setCookie } from 'h3';
  3. export function clearRefreshTokenCookie(event: H3Event<EventHandlerRequest>) {
  4. deleteCookie(event, 'jwt', {
  5. httpOnly: true,
  6. sameSite: 'none',
  7. secure: true,
  8. });
  9. }
  10. export function setRefreshTokenCookie(
  11. event: H3Event<EventHandlerRequest>,
  12. refreshToken: string,
  13. ) {
  14. setCookie(event, 'jwt', refreshToken, {
  15. httpOnly: true,
  16. maxAge: 24 * 60 * 60, // unit: seconds
  17. sameSite: 'none',
  18. secure: true,
  19. });
  20. }
  21. export function getRefreshTokenFromCookie(event: H3Event<EventHandlerRequest>) {
  22. const refreshToken = getCookie(event, 'jwt');
  23. return refreshToken;
  24. }