我正在使用Oauth重定向授权方法为页面标签iframe应用程序提供授权。
流程的工作原理如下:
令人困惑的是,如果不是重定向到Facebook页面标签,而是重定向到我的应用程序中的任何路径(即根目录,用户页面等),该应用程序将完全正常工作。只有通过将重定向设置为Facebook页面选项卡URL,用户才能“启动”。
更奇怪的是,如果我将重定向仅限于我的应用程序,而只是加载Facebook页面标签,那么授权就会被杀死。这意味着,在Facebook之后页面加载,在Facebook外刷新应用程序将提示用户再次授权,并且它们实际上已“退出”我的系统。
我正在将Rails 3.0.1和Devise 1.4.2用于用户帐户。用户授权将传递给Devise注册(我需要跟踪我的应用程序中的用户 - 基于投票的“竞赛”应用程序)。 Devise使用此处详述的“服务器端流程”:http://developers.facebook.com/docs/authentication/
我迷失了导致这种情况的原因。 Facebook杀了auth cookie?这会发生吗?
答案 0 :(得分:0)
第一次访问facebook标签页时,必须使用signed_request:
@signed_request = oauth.parse_signed_request(params[:signed_request])
因此,您可以在从其他页面重定向参数时发送参数,以检查它是否是第一次。