Интеграция социальных сетей в веб приложения
DESCRIPTION
Курсовая работа 2012 года.TRANSCRIPT
ИНТЕГРАЦИЯ СОЦИАЛЬНЫХ СЕТЕЙ В WEB-ПРИЛОЖЕНИЯ
Выполнил:
Студент 2 курса 9 группы
Путинцев Дмитрий Вячеславович
Руководитель:
Доцент Суздаль Станислав Валерьевич
Суть курсовой работы
• Показать необходимость в использовании интеграции с социальными сетями.
• Показать технологии, использумые при интеграции.
• Показать возможности интеграции.
• Показать перспективы веб приложений при использовании интеграции с социальными сетями.
Процентное соотношение зарегистрированных пользователей в социальных сетях к количеству
пользователей в интернете
44.00%
20.00%
1100 6.88% 4.80%
3%
Популярные социальные сети в Беларуси
Вконтакте
Одноклассники
Мой Мир@Mail.Ru
Google Plus
Интеграция с социальными сетями. Что можно сделать?
• Плагины • Авторизация • Персонализация
Плагины
Кнопка «Нравится» (Like)
Вконтакте
Одноклассники
Google Plus
Мой Мир@Mail.Ru
Сети:
Внедрение:
1 час
Плагин рекомендаций
Вконтакте
Мой Мир@Mail.Ru
Сети:
Внедрение:
1 час
Плагин комментариев
Вконтакте
Сети:
Внедрение:
4 часа
Авторизация
Традиционная Регистрация
Традиционная Регистрация: подтвеждение e-mail
118 нажатий клавиш
4 клика мыши
Улучшаем взаимодействие с пользователем с помощью OpenID
Улучшаем взаимодействие с пользователем с помощью OpenID
Улучшаем взаимодействие с пользователем с помощью OpenID
0 нажатий клавиш
2 клика мыши
Авторизация и аутентификация
OpenID используется для аутентификации пользователей посещающих сайт OAuth используется для получения авторизированного доступа к данным пользователя, хранящихся в другом месте
OpenID: Как это выглядит?
Mike Myspace
Myspace, я хочу использовать
мой Google аккаунт для авторизации
Mike Myspace Google
OpenID: Как это выглядит?
Myspace, я хочу использовать
мой Google аккаунт для авторизации
Mike Myspace Google
Google, кто это?
OpenID: Как это выглядит?
Myspace, я хочу использовать
мой Google аккаунт для авторизации
Mike Myspace Google
Google, кто это?
Myspace, это Mike!
OpenID: Как это выглядит?
Какие данные мы получаем?
• ФИО • Пол • Возраст • Фото • Друзья • Email (Google+, Facebook, Мой Мир)
Персонализация
OAuth: Регистрация приложения
Разработчик регистрирует приложение, и получает App ID и App secret
OAuth: Предоставление доступа
Приложение перенаправляет пользователя к Google, с указанием: client_id получившим при регистрации redirect_uri для пользователей, чтобы вернуть их назад
OAuth: Получение Access Token и Refresh Token
Google перенаправляет пользователя обратно на redirect_uri приложения и включает authorization_code в URL. http://conect.by/oauth/?code = <authorization_code>
Приложение выполняет HTTP POST запрос к Google, в том числе включая client_id, client_secret и code. Google возвращает access_token и refresh_token. { "access_token": "1/fFAGRNJru1FTz70BzhT3Zg" "expires_in": 3920, "refresh_token": "1/6BMfW9j53gdGX-tqf8JXQ" }
OAuth: Получение Access Token и Refresh Token
Приложение делает HTTP GET или HTTP POST запросы к API, включая access_token в качестве параметра запроса или заголовка.
Приложение делает HTTP POST запрос к Google, включая client_id, client_secret и refresh_token. Google возращает access_token. Refresh token остается таким же на неопределенное время. { "access_token":"1/fFAGRNJru1FTz70BzhT3Zg", "expires_in":3920 }
Пример: https://www.google.com/calendar/feeds/default/private/full?oauth_token=<access_token> Заголовок: Authorization: OAuth <access_token>
Публикуйте ваш контент
Публикуйте фотографии, записи в гостевые, уведомления Публикуйте все то, что может заинтересовать друзей пользователя
Алгоритм интеграции
Что Как Сколько
Привлечение пользователей
«Нравится» 1 день
Снижение порога входа
Авторизация 1 неделя
Вовлечение Персонализация 1 месяц
Вирусное распространение
Публикация контента
1 неделя
Сравнение возможностей
Facebook Twitter Google+ ВКонтакте
Одноклассники Мой Мир
Нравится + + + + + +
Рекомендации + + +
Комментарии + +
Авторизация OAuth 2 OAuth 1 OAuth 2, OpenID
OAuth 2 OAuth 2 OAuth 2
Email + + +
Немного о проекте
Немного о проекте
Где можно почитать в деталях?
http://developers.facebook.com https://dev.twitter.com http://vk.com/developers.php http://dev.odnoklassniki.ru https://developers.google.com http://api.mail.ru
А еще?
Вопросы?