Próbuję zarządzać moim użytkownikiem za pomocą plików cookie. To nie jest takie proste, ponieważ nie ma absolutnie żadnej dokumentacji na ten temat.Java Play! 2 - Zarządzanie użytkownikami za pomocą plików cookie
Z pomocą próbki "zentask" Zrobiłem to:
session("username", filledForm.field("username").value());
public class Secured{
public static Session getSession() {
return Context.current().session();
}
public static String getUsername() {
return getSession().get("username");
}
public static boolean isAuthorized() throws Exception {
String username = getUsername();
if (username == null)
return false;
long userCount = DatabaseConnect.getInstance().getDatastore()
.createQuery(User.class).field("username").equal(username)
.countAll();
if (userCount == 1)
return true;
return false;
}
używam go tak:
public static Result blank() throws Exception {
if (Secured.isAuthorized())
return ok(Secured.getUsername());
else
return ok(views.html.login.form.render(loginForm));
}
Teraz mam kilka pytań/problemów:
1.) Plik Cookie nie jest dektypowany i zawsze wygląda tak samo. np. bdb7f592f9d54837995f816498c0474031d44c1a-username% 3Akantaki
2.) Co robi klasa Security.Authenticator?
3.) Myślę, że zarządzanie użytkownikami za pomocą plików cookie jest bardzo częstym problemem, czy gra! 2.0 oferuje mi kompletne rozwiązanie? A może jest jakaś dokumentacja?
to wygląda niesamowicie, dzięki! –
Po prostu ciekawy, czy mógłbyś dać mi bardzo krótki przegląd tego, co muszę zmienić, aby działał w Mongodb? Sądzę, że musiałbym usunąć każdą metodę sql taką jak - play.find itd. I zastąpić ją morfiną? Pytam tylko dlatego, że musiałbym dużo zmienić. Nie chcę popełnić wielkiego błędu na początku –
Niestety, nie mogę ci pomóc w temacie "MongoDB" i "Morphia". Myślę, że najlepiej jest zacząć nowe pytanie, zwracając się dokładnie do jego zakresu. – biesior