Używam jersey-ja w myeclipse jako zapleczu mojego projektu i jsp jako frontend. Chcę ustawić plik cookie z serwera po pomyślnym zalogowaniu. W oficjalnym dokumencie o koszulce mogę znaleźć tylko jak zdobyć ciasteczko po koszulce. Czy ktoś może dać mi demo, żeby robić takie rzeczy?Jak ustawić cookie w Jersey?
To jest moja część logowania i zwracam odpowiedź i przekierowuję do adresu URL "/", co oznacza index.jsp.
@Path("/login")
@POST
@Consumes("application/x-www-form-urlencoded")
public Response login(@FormParam("email") String email,
@FormParam("password") String password) {
Map<String, Object> model = MapFactory.newHashMapInstance();
model.put("email", email);
model.put("password", password);
loginCheck(model);
if (model.get("emailCheck").equals("ok")
&& model.get("passwordCheck").equals("ok")) {
return Response.ok(
new Viewable("/index", new NewCookie("name",
"Hello, world!"))).build();
} else {
return Response.ok(new Viewable("/login", model)).build();
}
}
To jest mój „/” część:
@GET
@Produces("text/html")
public Response getIndex(@CookieParam("name") String name) {
HashMap<String, Object> model = MapFactory.newHashMapInstance();
model.put("name", name);
System.out.println("cookie name:\t" + name);
return Response.ok(new Viewable("/index", model)).build();
}
każdym razem, kiedy uruchomić ten kod, uważam, że nie mogę dostać ciasteczko z części indeksu. Jeśli kiedykolwiek zadałeś sobie to pytanie i nareszcie go rozwiązałeś, daj mi wskazówki, dzięki.
Przy okazji, czy wiesz, jak je wyczyścić (w koszulce), gdy chcę się wylogować z mojej strony? – mons
Spróbuj ustawić maxAge ciasteczka na 0, używając 'Response.ok(). Cookie (new NewCookie (" name ", null, null, null, null, 0/* maxAge * /, false)). Build() ' –
Tak, używam maxAge do" czyszczenia "ich. Zastanawiam się tylko, czy istnieją inne sposoby, takie jak metoda xxx.clean() do czyszczenia plików cookie. W każdym razie, to pytanie zostało już pomyślnie rozwiązane. Dziękuję za odpowiedź. Doceń dzielenie się. – mons