From caed2b5925d12dbe99e1f30e9dfb3748b2e3924c Mon Sep 17 00:00:00 2001 From: mountain Date: Mon, 4 Sep 2023 12:17:34 +0900 Subject: [PATCH] =?UTF-8?q?=EC=84=B8=EC=85=98=20touch=20=EB=A6=AC=ED=80=98?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/service.go | 19 +++++++++++++++++++ go.mod | 2 +- go.sum | 2 ++ 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/core/service.go b/core/service.go index 88512af..4a06be6 100644 --- a/core/service.go +++ b/core/service.go @@ -553,6 +553,25 @@ func (sh *serviceDescription) authorize(w http.ResponseWriter, r *http.Request) queryvals := r.URL.Query() authtype := queryvals.Get("type") uid := queryvals.Get("id") + if sk := queryvals.Get("sk"); len(sk) > 0 { + success, err := sh.sessionProvider.Touch(sk) + if err != nil { + logger.Error("authorize failed. sessionProvider.Touch err:", err) + w.WriteHeader(http.StatusInternalServerError) + return + } + + // !success일 때 빈 body를 보내면 클라이언트는 로그아웃 된다. + if success { + output := map[string]any{ + "sk": sk, + "expirein": sh.sessionTTL.Seconds(), + } + bt, _ := json.Marshal(output) + w.Write(bt) + } + return + } var email string diff --git a/go.mod b/go.mod index 8e6eab7..e2d0e89 100644 --- a/go.mod +++ b/go.mod @@ -7,7 +7,7 @@ require ( github.com/golang-jwt/jwt v3.2.2+incompatible go.mongodb.org/mongo-driver v1.11.7 google.golang.org/api v0.128.0 - repositories.action2quare.com/ayo/gocommon v0.0.0-20230904005440-d396a35713ad + repositories.action2quare.com/ayo/gocommon v0.0.0-20230904025656-0eefb438a6d3 ) require ( diff --git a/go.sum b/go.sum index 1b0b6f3..4bb7c23 100644 --- a/go.sum +++ b/go.sum @@ -357,3 +357,5 @@ repositories.action2quare.com/ayo/gocommon v0.0.0-20230901014215-68e40d580f7c h1 repositories.action2quare.com/ayo/gocommon v0.0.0-20230901014215-68e40d580f7c/go.mod h1:PdpZ16O1czKKxCxn+0AFNaEX/0kssYwC3G8jR0V7ybw= repositories.action2quare.com/ayo/gocommon v0.0.0-20230904005440-d396a35713ad h1:/hwmPT3hKm/eSqvZ9LjamlvptygWZ87fg09OujRu5xo= repositories.action2quare.com/ayo/gocommon v0.0.0-20230904005440-d396a35713ad/go.mod h1:PdpZ16O1czKKxCxn+0AFNaEX/0kssYwC3G8jR0V7ybw= +repositories.action2quare.com/ayo/gocommon v0.0.0-20230904025656-0eefb438a6d3 h1:6IBLAxab5ntTG+TGjvd7+Pm+QHipQMS7GKg+XrXjn88= +repositories.action2quare.com/ayo/gocommon v0.0.0-20230904025656-0eefb438a6d3/go.mod h1:PdpZ16O1czKKxCxn+0AFNaEX/0kssYwC3G8jR0V7ybw=