Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Session 将_重定向到后会话丢失_Session_Redirect_Ruby On Rails 3.2_Koala - Fatal编程技术网

Session 将_重定向到后会话丢失

Session 将_重定向到后会话丢失,session,redirect,ruby-on-rails-3.2,koala,Session,Redirect,Ruby On Rails 3.2,Koala,在应用程序重定向后,我遇到会话丢失的问题。我们正在使用宝石“考拉”与Facebook整合。这个gem在rails3.0上运行得很好,但是我们没有升级到rails3.2.12,它失败了,因为会话在重定向到Facebook后消失了 我一直在调查和阅读很多类似的问题,但还没有找到任何解决方案。这里的关键是两个动作: 1) Publish_事件操作,我们在其中设置考拉对象并与Facebook连接: def publish_event ... ... callback = url_for

在应用程序重定向后,我遇到会话丢失的问题。我们正在使用宝石“考拉”与Facebook整合。这个gem在rails3.0上运行得很好,但是我们没有升级到rails3.2.12,它失败了,因为会话在重定向到Facebook后消失了

我一直在调查和阅读很多类似的问题,但还没有找到任何解决方案。这里的关键是两个动作:

1) Publish_事件操作,我们在其中设置考拉对象并与Facebook连接:

def publish_event
   ...
   ...
   callback = url_for(......................)
   @oauth = Koala::Facebook::OAuth.new(Facebook::APP_ID, Facebook::SECRET, callback)
   session[:oauth] = @oauth

   redirect_to @oauth.url_for_oauth_code(:permissions => ["offline_access", "publish_stream", "manage_pages"])
end
该部分工作正常,并成功连接到Facebook。Facebook重定向回我们的应用程序,第二个操作称为:

2) Facebook回调操作,我们在其中发布我们想要的消息:

def facebook_callback  
  token = session[:oauth].get_access_token(params[:code])
  @graph = Koala::Facebook::API.new(token)
  .....
end
这里的问题是,重定向到Facebook后,会话未加载(Rack::session::Abstract::SessionHash:0x30027e4尚未加载),因此我们无法继续,因为我们需要创建与Facebook连接的原始oauth Koala对象,该对象应该在会话中

我将会话配置为活动记录存储,它在应用程序的其余部分运行良好,因此我在这里非常困惑

有人遇到过类似的事情吗?或者你有什么不同的建议吗


谢谢

可能,您需要为回调进行正确的路由,请显示您的
rake路由