我在使用Sinatra和Rack的Facebook Canvas應用程序中使用會話。使用Sinatra for Facebook Canvas應用程序的未定義方法「會話」
發生在Facebook畫布頁的錯誤是:
NoMethodError - undefined method `session' for #<Hash:0xa3ed0a0>:
/home/apoorv/.rvm/gems/ruby-1.9.2-p320/gems/sinatra-1.3.2/lib/sinatra/base.rb:170:in `session'
的問題肯定是有機架,因爲當我運行我的應用程序如下:
紅寶石application.rb中-p 3000
它不顯示任何錯誤。我已經嘗試安裝機架版本:1.3.6和1.4.1,但錯誤仍然存在。
我也用下面的代碼,而不是enable :sessions
use Rack::Session::Cookie, :key => 'rack.session',
:domain => 'static.ak.facebook.com',
:path => '/',
:secret => 'change_me'
我需要升級/降級降低機架的版本,或者添加一些代碼塊,使這件事情的工作試過嗎?
編輯
還隔着這個問題,我有一個問題在Facebook的帆布整合我的申請其主要原因是config.ru加入這一行解決來臨前:
set :protection, :except => [:remote_token, :frame_options]