除了一件事,我使用Authlogic(使用authlogic_facebook_connect插件)实现了Facebooker,似乎一切正常。
在初次授权应用程序后(通过点击Facebook弹出窗口上的确定),我仍然保留在登录页面上。没有重定向。但是,一旦我刷新登录页面然后再次单击Facebook按钮,就没有弹出窗口,因为它已经被Facebook授权,而是自动重定向到/ user_session(用于通过Facebook会话进行身份验证)并立即将我带到仪表板页面如预期的那样。
其他信息:
在授权Facebook之后,知道为什么它不会在第一次点击时重定向?为http:/// user_session /设置了授权后URL,并正确设置了authlogic的路由。
我尝试使用Prototype和jQuery,两者都给出了相同的结果。
如果您尝试使用Facebook进行身份验证,则可以在本教程网站上看到相同的问题。这个网站不是我的,所以请自担风险: http://facebooker.pjkh.com
感谢。
答案 0 :(得分:3)
此处也有同样的问题。我认为使用jquery为我做任何事情的原因是由
生成的代码<%= authlogic_facebook_login_button :controller => 'customer_session' %>
类似
<form id='connect_to_facebook_form' method='post' action='/customer_session'>
<input type='hidden' name='authenticity_token' value='keLV8CIfc5znsRkjhkjhkjhkjhkjh='/>
</form>
<script type='text/javascript' charset='utf-8'>
function connect_to_facebook() {
$('connect_to_facebook_form').submit();
}
</script>
<fb:login-button js="prototype" onlogin="connect_to_facebook()"></fb:login-button>
提交表单的jquery应该是
$('#connect_to_facebook_form').submit();
(呃,因为我没有传入:js =&gt;:jquery)
但如果我解决了,我仍然会
1个错误禁止此客户 会话被保存
以下有问题 字段:
* You did not provide any details for authentication
所以正确的细节没有被注入表格我猜