From 20afcc8b86a16c2f1a4d454ac381cdfcd4de4317 Mon Sep 17 00:00:00 2001 From: click33 <2393584716@qq.com> Date: Wed, 26 Oct 2022 21:22:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=9C=A8=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E4=BA=86=20cookie.path=20=E5=90=8E=EF=BC=8C=E6=B3=A8=E9=94=80?= =?UTF-8?q?=E6=97=B6=E6=97=A0=E6=B3=95=E5=BD=BB=E5=BA=95=E6=B8=85=E9=99=A4?= =?UTF-8?q?=20Cookie=20=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/dev33/satoken/context/model/SaResponse.java | 10 ++++++++++ .../src/main/java/cn/dev33/satoken/stp/StpLogic.java | 3 ++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/context/model/SaResponse.java b/sa-token-core/src/main/java/cn/dev33/satoken/context/model/SaResponse.java index 99984369..78c11be0 100644 --- a/sa-token-core/src/main/java/cn/dev33/satoken/context/model/SaResponse.java +++ b/sa-token-core/src/main/java/cn/dev33/satoken/context/model/SaResponse.java @@ -26,6 +26,16 @@ public interface SaResponse { addCookie(name, null, null, null, 0); } + /** + * 删除指定Cookie + * @param name Cookie名称 + * @param path Cookie 路径 + * @param domain Cookie 作用域 + */ + public default void deleteCookie(String name, String path, String domain) { + addCookie(name, null, path, domain, 0); + } + /** * 写入指定Cookie * @param name Cookie名称 diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/stp/StpLogic.java b/sa-token-core/src/main/java/cn/dev33/satoken/stp/StpLogic.java index a5ec689f..36b4ac20 100644 --- a/sa-token-core/src/main/java/cn/dev33/satoken/stp/StpLogic.java +++ b/sa-token-core/src/main/java/cn/dev33/satoken/stp/StpLogic.java @@ -441,7 +441,8 @@ public class StpLogic { // 如果打开了 Cookie 模式,则把 Cookie 清除掉 if(getConfig().getIsReadCookie()){ - SaHolder.getResponse().deleteCookie(getTokenName()); + SaCookieConfig cookie = getConfig().getCookie(); + SaHolder.getResponse().deleteCookie(getTokenName(), cookie.getPath(), cookie.getDomain()); } // 从当前 [Storage存储器] 里删除 Token