재생 버전 2.6.2를 사용 중입니다. 응용 프로그램에는 직접 로그인이 없습니다. 세션을 만들고 다른 쿠키 이름을 PLAY_SESSION
으로 만드는 또 다른 응용 프로그램이 있는데이 쿠키는 응답 헤더에 추가되어 있으므로 직접 Play 응용 프로그램에 로그인 할 수 있습니다.Play Framework 로그 아웃 쿠키 폐기 Java
브라우저에서 이름이 PLAY_SESSION
인 쿠키를 볼 수 있으며 경로 값은 첫 번째 애플리케이션 컨텍스트 경로 (예 : "/"
)에서입니다.
문제는 사용자가 로그 아웃 할 때마다 재생 응용 프로그램 컨텍스트 경로 (예 : "/test"
)와 다른 경로로 PLAY_SESSION
과 동일한 이름의 쿠키를 하나 더 만듭니다. 브라우저에는 동일한 이름을 가진 두 개의 쿠키가 있지만 문제의 원인이되는 두 개의 다른 경로 값이 있습니다.
재생으로 생성 된 새로운 쿠키는 어떻게 삭제합니까? 내가 Http.Context.current().response().discardCookie("PLAY_SESSION", "/test");
로그 아웃 코드를 시도하는 것은 같은 것입니다 :
DefaultLogoutLogic<Result, PlayWebContext> logoutLogic = new DefaultLogoutLogic<>();
final PlayWebContext playWebContext = new PlayWebContext(ctx(), playSessionStore);
Result result = logoutLogic.perform(playWebContext, config, config.getHttpActionAdapter(),
"/v3/logout-callback", null, true, true, false);
어떤 도움에 감사드립니다. 구현은 Java로 진행됩니다.