Как связать учетные записи Facebook, Twitter и Google в Java (Spring MVC)

Я просматриваю функции социальной аутентификации (http://code.google.com/p/socialauth/) и задаюсь вопросом, подходит ли это для моего требования. Пожалуйста, направляйте.

Мое веб-приложение в настоящее время имеет собственный механизм входа в систему (собственный). Но я планирую сделать следующее:

  1. Войти через Facebook(F), Twitter(T) и Google(G)
  2. После входа в систему (через F, T, G или собственный вход) я хочу предоставить пользователю возможность выбора F друзей, T подписчиков или G контактов (в текстовом поле с функцией автозаполнения)

Итак, я сомневаюсь: (социальная аутентификация говорит, что «... в настоящее время Facebook, Twitter и LinkedIn не предоставляют адреса электронной почты. ОБНОВЛЕНИЕ: Hotmail прекратил предоставлять адреса электронной почты».) Итак, хотя у меня будет список подписчиков, друзей или контактов смогу ли я уведомить их, как только мой пользователь выберет и отправит свою форму?

Будет ли это через F, T или G соответственно (через обновления статуса, твиты или электронную почту?)

Кроме того, у меня есть еще один сценарий: например. пользователь вошел в систему, используя Facebook. Теперь я хочу, чтобы пользователь также мог связать свою учетную запись Twitter и Google. Может ли socialauth предоставить это? Если да, как мне обрабатывать несколько объектов профиля одного и того же пользователя?

Пожалуйста, направьте или предложите любую другую библиотеку. Мое приложение находится в Spring MVC.

Или я должен использовать Spring Social?


person LittleLebowski    schedule 22.10.2012    source источник
comment
Эй, с чем ты в итоге поехал? и почему?   -  person Nathan Dortman    schedule 02.02.2014
comment
@NathanDortman Я тоже хотел бы знать.   -  person dev_feed    schedule 18.07.2014


Ответы (4)


Поскольку ваше приложение использует Spring-MVC, вам следует попробовать Spring Social. Это было бы лучше для вашего приложения.

person Japan Trivedi    schedule 22.10.2012
comment
Есть ли другие причины использовать его? Есть ли лучшая/надежная/простая альтернатива Spring Social, которая широко используется с хорошими учебными пособиями в Интернете и пользовательской базой? Любая идея. Я просто пытаюсь понять плюсы и минусы, прежде чем совершать и исправлять конкретное решение. - person LittleLebowski; 22.10.2012
comment
Я никогда не использовал SpringSocial или любые другие социальные API в веб-приложениях. Но я просто знаю, что SpringSocial — это один из API, который можно использовать для достижения этой цели. - person Japan Trivedi; 22.10.2012
comment
Даже я это знаю. Но я хотел знать, будет ли разумным выбор Spring Social. Почему не социальная авторизация? - person LittleLebowski; 23.10.2012
comment
Я бы не рекомендовал использовать Spring Social. Работать с ним для меня было полным беспорядком. Мне потребовалось гораздо меньше времени, чтобы реализовать полную аутентификацию FB + Google самостоятельно, а также это помогло мне понять, что происходит под капотом. Я обнаружил много вещей, которые не работали должным образом и не поддавались настройке. Если хотите избавить себя от неприятностей в будущем, реализуйте его самостоятельно, это не так уж и сложно. - person Robert Vangor; 11.07.2017

Вы также можете использовать библиотеку socialauth. Он также имеет весеннюю версию для подключения к FB, Twitter и другим провайдерам. Ссылка на то же самое, как указано ниже:-

http://code.google.com/p/socialauth/

person Tarun Nagpal    schedule 26.11.2012

Spring Social - лучший вариант для ваших требований, и его можно легко интегрировать с

person Ram Tripathi    schedule 12.02.2014
comment
Возможно, это должен быть комментарий. - person johnchen902; 12.02.2014

Для этого можно использовать 2 проверенных способа.

  1. Использование Spring- безопасность-oauth2
  2. Использование Spring Social

Однако, если вы используете только Spring Social на основе примера facebook, представленного на веб-сайте Spring, помните об этих проблемах.

  1. Это не работает для более чем 1 пользователя
  2. Spring-social также не поддерживает Google.
  3. Также трудно изменить поток перенаправления, если вы не переопределите методы

Но хорошо, что есть обходные пути для их исправления, и они довольно просты.

Полное руководство с пошаговыми инструкциями можно найти по адресу здесь

Изучив как oauth2, так и Spring Social. Я бы предложил Spring-social, поскольку он намного проще и создан специально для входа в социальные сети.

person Abhishek Galoda    schedule 11.08.2017