32 lines
706 B
Go

package auth
import (
"dk/internal/cookies"
"dk/internal/session"
"dk/internal/utils"
"time"
"github.com/valyala/fasthttp"
)
const SessionCookieName = "dk_session"
func SetSessionCookie(ctx *fasthttp.RequestCtx, sessionID string) {
cookies.SetSecureCookie(ctx, cookies.CookieOptions{
Name: SessionCookieName,
Value: sessionID,
Path: "/",
Expires: time.Now().Add(session.DefaultExpiration),
HTTPOnly: true,
Secure: utils.IsHTTPS(ctx),
SameSite: "lax",
})
}
func GetSessionCookie(ctx *fasthttp.RequestCtx) string {
return cookies.GetCookie(ctx, SessionCookieName)
}
func DeleteSessionCookie(ctx *fasthttp.RequestCtx) {
cookies.DeleteCookie(ctx, SessionCookieName)
}