Перейти к контенту
  • 0

Интеграция с вконтакте


Tugo

Вопрос

Никто еще не пробовал внедрить api вконтакте?

http://vkontakte.ru/pages.php?o=-1&p=Open%20API

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Я думал вы про 2.3.6 спрашиваете :D

 

С 3.x врядли буду этим заниматься. Хотя всё зависит от того, что хочется сделать.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

По вашей ссылке пишет:

Чтобы просматривать эту страницу, нужно зайти на сайт.

 

С таким отношением к девелоперам пускай сами идут лесом. API - оно на то и API, чтобы быть открытым :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0
По вашей ссылке пишет:
Чтобы просматривать эту страницу, нужно зайти на сайт.

 

С таким отношением к девелоперам пускай сами идут лесом. API - оно на то и API, чтобы быть открытым :D

вы ничего не путаете?

post-77269-1271996397_thumb.png

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Да, доступ появился. Я так понимаю, суть технологии - в кросс-доменных AJAX-запросах на их сервер и получении ответов от него на уровне JavaScript? Т.е. все осуществляется в пользовательской интерпретирующей среде?

 

VK.Auth.login(function(response) {
 if (response.session) {
/* Пользователь успешно авторизовался */
if (response.settings) {
  /* Выбранные настройки доступа пользователя, если они были запрошены */
}
 } else {
/* Пользователь нажал кнопку Отмена в окне авторизации */
 }
});

 

Насколько я разобрался, это коллбэк от успешной авторизации. Ну-ну... Самое "умное", что можно было придумать, что проверка авторизации на уровне JavaScript. Здравствуй, спам.

 

Так, попробую вдуматься снова....

 

Что мы имеем: подгружаемый java-скрипт с ВКонтакте. По клику "авторизоваться через ВКонтакте" он вызывает pupup с формой авторизации. После авторизации мы получаем через JavaScript вызов на странице обработчика VK.Auth.login, в который придет session (содержащий установленную в случае успешной авторизации cookie на вашем домене) и массив данных пользователя (видимо, логин, ФИО, номер социального страхования, фамилия бабушки и одна порно-фотка). Интересно, передается ли пароль? Вряд ли, скорее всего, только сессия и логин.

 

Главный вопрос, на который нет ответа: есть ли фоновые служебные запросы к серверу, подтверждающие факт авторизации по данной сессии? Если их нет - то весь этот OpenID - чушь и профанация.

 

Ну получим мы неподтвержденные данные через JavaScript и поставленную кем-то cookie на нашем домене, и что делать с ними дальше? Сразу и безоговорочно поверить? А что мешает с помощью любого userscript каждому желающему сформировать свою "сессию" и массив данных?

 

Итак, вариантов несколько:

 

а) "поверить" сессии, сразу же внести пользователя в списки, дать доступ постить + когда он в следующий раз авторизуется - пустить его в этот акк (видимо, проверять по email и дополнительному полю таблицы "он с вконтакта" (id вконтакта, если его дают))

Минусы: спам - любой школьник за 10 минут напишет скрипт, что создать 10000 учеток на чужое имя;

Плюсы: удобно для пользователя.

 

б) частично "поверить" сессии - внести пользователя в списки "ожидающих подверждения", сгенерировать ему случайны пароль и отправить ссылку на активацию на email. При повторной авторизации через ВКонтаке дозапрашивать локальный пароль

Минусы: неудобно пользователю - какая разница тогда между обычной регой и вконтактом - наоборот, вместо просто логина придется сначала авторизовываться на вконтактах, а затем уже на форуме; сложность реализации,

Плюсы: безопасно для вас - пользователь будет проверен по email.

 

Других вариантов не вижу.

 

Если все же есть фоновая передача данных s2s, то вариант (а) становится вполне себе безопасным и удобным - подтверждением авторизации и активацией аккаунта будет заниматься именно обработчик фоновых запросов.

 

Так есть она или нет, кто точно знает? В "документации" об этом ни слова.

Изменено пользователем Ritsuka
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Конечно не так.

 

Ага, кажется, что-то начинает проясняться.

 

http://api.vkontakte.ru/api.php?api_id=1854119&fields=photo,sex&format=JSON&method=getProfiles&sid={%наш_session%}&sig={%md5%}&uids=100172&v=3.0

 

Т.е. получив session мы можем выполнять все, что перечислено тут, от имени самого пользователя: http://vkontakte.ru/page2369282

Ссылка на комментарий
Поделиться на других сайтах

  • 0

кто возьметься за интеграцию для версии 3.1.1? пишите в личку

в русской версии она уже есть ;)

 

 

Очень зхдорово что есть в русской версии, но я год назад купил английскую версию;)

Ссылка на комментарий
Поделиться на других сайтах

  • 0

домен не совпадает с тем что прописан в настройках приложения вконтакте

форум находится по адресу - http://site.com/forum_1/

 

в настройках приложения указано:

Адрес сайта: http://site.com/forum_1/

Базовый домен: site.com

 

я так понимаю что авторизация не проходит потому что форум в папке сайта а не на своём отдельном домене, как это исправить?

Изменено пользователем KoMePcAHT
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Возьмите файл /admin/sources/base/core.php из 3.1.2 в КЦ, либо обновитесь до новой версии, тем более она будет полезнее потому что у вас не стандартный стиль.
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Возьмите файл /admin/sources/base/core.php из 3.1.2 в КЦ, либо обновитесь до новой версии, тем более она будет полезнее потому что у вас не стандартный стиль.

файл заменил - то же самое, сейчас попробую обновить тестовый форум до последней версии. мне почему-то кажется что проблема на стороне контакта..

Изменено пользователем KoMePcAHT
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Проблема на стороне форума.

 

После обновления если не взлетит, кидайте доступы к FTP и АЦ, желательно через клиент-центр.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Нарисовалась проблемка: создал приложение, настроил интеграцию в админке, даже привязал запись Вконтакте к существующей на форуме, но в профиле меню "Соединение с Вконтакте" не работает - выдает ошибку "Internal Server Error: 500".

Ссылка вида /index.php?app=core&module=usercp&tab=members&area=vkontakte ; кстати на этом форуме тоже не работает ссылка.

 

P.S.: Версия форума 3.1.2, обновил с 3.1.1

Изменено пользователем lanadm
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Вот еще интересность - у меня включена https авторизация, так вот при ней не отображается содержимое блока "Вход через Вконтакте" - он тупо пуст.

При выключении https авторизации содержимое появляется, чяднт? Или писать в трекер ошибку :)

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.