From e55aea13b4eb0b21a11f79f86e43dbc86a7a5616 Mon Sep 17 00:00:00 2001 From: kandrusyak Date: Fri, 28 Jul 2023 01:39:20 +0300 Subject: [PATCH] add logout --- main.go | 1 + services/users/users.go | 21 ++++++++++++++------- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/main.go b/main.go index 6667eeb..0d9bfb8 100644 --- a/main.go +++ b/main.go @@ -50,6 +50,7 @@ func main() { // Users mainGroup.POST("/auth/login", users.Login) + mainGroup.POST("/auth/logout", users.Logout) mainGroup.GET("/users/me", users.GetCurrentUser) mainGroup.GET("/users", users.GetUsers) mainGroup.GET("/users/:id", users.GetUsers) diff --git a/services/users/users.go b/services/users/users.go index cd3e4be..dc110d2 100644 --- a/services/users/users.go +++ b/services/users/users.go @@ -43,18 +43,25 @@ func Login(c echo.Context) (err error) { } c.SetCookie(&http.Cookie{ - Name: "accessToken", - Value: _token, - Path: "/", - MaxAge: 31536000, - Expires: time.Now().Add(24 * time.Hour), - Secure: true, - SameSite: 4, + Name: "accessToken", + Value: _token, + Path: "/", + Expires: time.Now().Add(24 * time.Hour), }) return c.JSON(http.StatusOK, u) } +func Logout(c echo.Context) error { + c.SetCookie(&http.Cookie{ + Name: "accessToken", + Value: "", + Path: "/", + Expires: time.Unix(0, 0), + }) + return c.NoContent(http.StatusOK) +} + func GetCurrentUser(c echo.Context) error { data, err, _ := api.GetRequest(config.Env.MSHosts.UsersHost+"/me", c.Request().Header)