Я создаю приложение JSP, и я хотел бы использовать Facebook Connect как один из путей для регистрации и аутентификации пользователей, но я не нахожу много информации о том, как извлекать и анализировать файл cookie FB или даже правильный поток. Я пытаюсь объединить информацию, содержащуюся в официальной документации, пошаговое руководство, например this но для Java. Я не против использования библиотек, таких как Социальная Java, но понимание шагов было бы полезным. Вот три случая использования, которые я пытаюсь удовлетворить.
- Неавторизованный/незарегистрированный пользователь на моем сайте нажимает кнопку "Facebook Connect" для входа в систему (запись электронной почты, имени и профиля) и вход в систему.
- Неавторизованный пользователь нажимает кнопку "Facebook Connect" для создания действительного сеанса в моем домене.
- Аутентифицированный и зарегистрированный пользователь без подключенного профиля Facebook нажимает "Facebook Connect" и связывает идентификатор профиля Facebook (и возможность обновлять их электронную почту и имя) своим существующим профилем.
Для этого проекта у меня есть класс Profile, который выглядит так (я использую отличный Project Lombok с Hibernate)
@Entity
@Data
public class Profile implements java.io.Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
private String username;
private String password;
private String displayName;
private String email;
private String zipCode;
private String mobileNumber;
private String facebookId;
@Type(type = "org.jadira.usertype.dateandtime.joda.PersistentDateTime")
private DateTime dateCreated;
private int status;
private int level;
}
Статус и уровень действительно должны быть перечислениями, но я стараюсь, чтобы код был коротким для этого вопроса.
Отказ от ответственности: Я читал много блогов о том, как настроить Facebook Connect для регистрации и аутентификации пользователей, но они в основном основаны на PHP и более ранних версиях API Facebook (даже некоторые вопросы SO указывают на старую wiki в их принятых ответах). Это похоже на идеальное приложение сообщества SO.