我正在使用javascript进行facebook登录,以及发布操作。 问题是,如果我在页面A登录Facebook,我无法在页面B上发布,因为我丢失了所有的Facebook信息,我必须重新初始化并重新登录Facebook以便发布在其他... 我希望有一个登录页面,用户可以在网站上导航并从任何页面发布。 有没有办法通过使用cookie来解决这个问题?或其他什么?我寻找回来但是cookie,但我仍然没有找到如何......
由于
答案 0 :(得分:1)
您希望将Facebook身份验证令牌保留在某个位置,例如数据库。然后,使用javascript API检查用户是否已登录:
window.fbAsyncInit = ->
FB.init(appId: '<%= ENV["FACEBOOK_APP_ID"] %>', cookie: true)
$('#sign_in').click (e) ->
e.preventDefault()
FB.login (response) ->
window.location = '/auth/facebook/callback' if response.authResponse
Facebook网络应用程序有几个移动部件,包括客户端和服务器身份验证。你应该看看这个Railscast,它非常全面地描述了这个过程:
http://railscasts.com/episodes/360-facebook-authentication
您甚至可以提取源代码:http://media.railscasts.com/assets/episodes/sources/360-facebook-authentication.zip