Я создаю приложение на холсте Facebook, которое загружается в iframe с Django.Я хотел бы, чтобы процесс входа в систему работал так же, как это делает Zynga.В этом методе, если вы не вошли в систему, вы будете перенаправлены на страницу входа в Facebook, а затем на страницу запроса разрешений для приложения (без всплывающих окон).
Насколько я могу судить, Zynga должна использоватьFBML и просто переадресация на URL-адреса, которые выглядят следующим образом:
http://www.facebook.com/login.php?api_key=[api_key]&canvas=1&fbconnect=0&next=[return_url]
В любом случае можно ли добиться аналогичного эффекта в приложении Python, которое загружается в iframe?
Существует метод здесь , который показывает, как добиться правильного перенаправления с использованием нового php SDK, но я пытаюсь использовать новый Python SDK, который имеет только метод:
def get_user_from_cookie(cookies, app_id, app_secret):
"""
Parses the cookie set by the official Facebook JavaScript SDK.
cookies should be a dictionary-like object mapping cookie names to
cookie values.
...
"""
У меня есть некоторый рабочий код, который использует Javascript SDK и метод get_user_from_cookie:
<div id="fb-root">
<script src="http://connect.facebook.net/en_US/all.js"></script>
</div>
<script type="text/javascript">
FB.init({ apiKey: 'apikey', status: true, cookie: true, xfbml: true});
FB.Event.subscribe('auth.login', function(response) {
// Reload the application in the logged-in state
window.top.location = 'http://apps.facebook.com/myapp/';
});
</script>
<fb:login-button>Install MyApp</fb:login-button>
Проблема с этим методом заключается в том, что пользователю требуется нажать кнопку для входа в систему, а затем пройти черезвсплывающие экраны аутентификации.(Примечание: всплывающее окно также появляется, если я вызываю FB.login напрямую)
Итак ... есть ли способ использовать javascript SDK для перенаправления на страницу входа вместо загрузки его в виде всплывающего окна?
Спасибо за любую помощь!--Eric