cookies无法覆盖问题

参考https://blog.csdn.net/lyh1994123/article/details/80083767

场景:测试环境有2个项目,登录一个项目后,另一个项目无法登录,提示token失效。

原因:cookies中的token参数覆盖失败,校验登录失败。

修复方式:需要设置path、domain来使得cookie覆盖生效

    /**
     * 
     * Description:保存token到cookie
     *
     * @param response
     * @param token
     * @throws UnsupportedEncodingException
     */
    public static void setCookieToken(HttpServletResponse response, String token) {
        Cookie cookie = null;
        try {
            cookie = new Cookie(userTokenCookieKey, URLEncoder.encode(token, "UTF-8"));
        } catch (UnsupportedEncodingException e) {
            cookie = new Cookie(userTokenCookieKey, token);
        }
        cookie.setMaxAge(3600 * 24 * tokenCookieMaxAge); // tokenCookieMaxAge 天
        cookie.setPath("/");
        if (StringUtil.isNotBlank(tokenCookieDomain)) {
            cookie.setDomain(tokenCookieDomain);
        }
        response.addCookie(cookie);
    }

你可能感兴趣的:(cookies无法覆盖问题)