Беспроблемная аутентификация, когда это возможно

У меня есть веб-сайт, который работает с Facebook Connect (или Facebook для веб-сайтов, как я думаю, теперь он называется). Когда пользователь впервые заходит на сайт, он может перемещаться по сайту и делать какие-то простые вещи без какой-либо интеграции с Facebook. Если он хочет выполнить какие-то сложные операции, нам нужно, чтобы он вошел в Facebook и разрешил нашему приложению собирать некоторую базовую информацию о нем. Мы пытаемся быть добропорядочными корпоративными гражданами, позволяя ему опробовать сайт, не заставляя его входить в систему и авторизоваться.

Для этого у нас есть кнопка входа в систему, которую ему нужно нажать перед выполнением расширенных функций. Когда он отправлен, мы вызываем https://www.facebook.com/dialog/oauth и т. д. чтобы все уладить.

Эта система работает нормально, за исключением одного. ЕСЛИ он уже вошел в Facebook И ЕСЛИ он уже авторизовал наше приложение, он должен просто без проблем войти в систему, когда он заходит в веб-приложение. Но я не вижу, как это сделать.

Конечно, я могу позвонить https://www.facebook.com/dialog/oauth, когда он начнет веб-приложение, и если условия правильные, все работает отлично. Но если условия не подходят, то ему предстоит сделать кучу дел, которые я пока не хочу ему давать.

Наверняка есть способ обойти это. Как я могу беспрепятственно разрешить своим пользователям аутентифицироваться через Facebook с условием, что, если какое-либо из условий неверно, просто прервите весь процесс, ничего не показывая пользователю?


person Sander Smith    schedule 17.02.2012    source источник


Ответы (1)


Прежде чем отобразить кнопку входа для пользователя, вызовите FB.getLoginStatus() чтобы увидеть, вошли ли они уже в систему или нет.

person DMCS    schedule 18.02.2012
comment
Это похоже на то, что мне нужно сделать. Есть ли другой способ сделать это, не зависящий от JavaScript? - person Sander Smith; 19.02.2012