generated from pricelees/issue-pr-template
refactor: AuthController의 응답에 ResponseEntity를 적용하기 위한 쿠키 관련 로직 수정
This commit is contained in:
parent
c0b4b96385
commit
651557ca87
@ -2,26 +2,25 @@ package roomescape.auth.web.support
|
|||||||
|
|
||||||
import jakarta.servlet.http.Cookie
|
import jakarta.servlet.http.Cookie
|
||||||
import jakarta.servlet.http.HttpServletRequest
|
import jakarta.servlet.http.HttpServletRequest
|
||||||
import jakarta.servlet.http.HttpServletResponse
|
import org.springframework.http.ResponseCookie
|
||||||
import roomescape.auth.web.TokenResponse
|
import roomescape.auth.web.TokenResponse
|
||||||
|
|
||||||
const val ACCESS_TOKEN_COOKIE_NAME = "accessToken"
|
const val ACCESS_TOKEN_COOKIE_NAME = "accessToken"
|
||||||
|
|
||||||
fun Cookie.expire(): Unit {
|
|
||||||
this.value = ""
|
|
||||||
this.maxAge = 0
|
|
||||||
}
|
|
||||||
|
|
||||||
fun TokenResponse.toCookie(): Cookie = Cookie(ACCESS_TOKEN_COOKIE_NAME, this.accessToken)
|
|
||||||
.also { it.maxAge = 1800000 }
|
|
||||||
|
|
||||||
fun HttpServletRequest.accessTokenCookie(): Cookie = this.cookies
|
fun HttpServletRequest.accessTokenCookie(): Cookie = this.cookies
|
||||||
?.firstOrNull { it.name == ACCESS_TOKEN_COOKIE_NAME }
|
?.firstOrNull { it.name == ACCESS_TOKEN_COOKIE_NAME }
|
||||||
?: Cookie(ACCESS_TOKEN_COOKIE_NAME, "")
|
?: Cookie(ACCESS_TOKEN_COOKIE_NAME, "")
|
||||||
|
|
||||||
fun HttpServletResponse.addAccessTokenCookie(cookie: Cookie) {
|
fun TokenResponse.toResponseCookie(): String = accessTokenCookie(this.accessToken, 1800)
|
||||||
cookie.isHttpOnly = true
|
.toString()
|
||||||
cookie.secure = true
|
|
||||||
cookie.path = "/"
|
fun expiredAccessTokenCookie(): String = accessTokenCookie("", 0)
|
||||||
this.addCookie(cookie)
|
.toString()
|
||||||
}
|
|
||||||
|
private fun accessTokenCookie(token: String, maxAgeSecond: Long): ResponseCookie =
|
||||||
|
ResponseCookie.from(ACCESS_TOKEN_COOKIE_NAME, token)
|
||||||
|
.httpOnly(true)
|
||||||
|
.secure(true)
|
||||||
|
.path("/")
|
||||||
|
.maxAge(maxAgeSecond)
|
||||||
|
.build()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user