0
我正在使用swfupload的最新版本2.2.0和rails 2.3.3。看到了大量的聲明,我將不得不用大塊代碼替換CGI :: Session.initialize以從注入到表單url的鍵值對中提取會話,我將代碼段合併到我的環境中。 RB:Rails拒絕從swfupload發送的數據加載會話
require 'cgi'
class CGI::Session
alias original_initialize initialize
def initialize(request, option = {})
session_key = option['session_key'] || '_session_id'
query_string = if (qs = request.env_table["QUERY_STRING"]) and qs != ""
qs
elsif (ru = request.env_table["REQUEST_URI"][0..-1]).include?("?")
ru[(ru.index("?") + 1)..-1]
end
if query_string and query_string.include?(session_key)
option['session_id'] = query_string.scan(/#{session_key}=(.*?)(&.*?)*$/).flatten.first
end
original_initialize(request, option)
end
end
我看到的會話信息被正確地裝入形式參數文件上傳,但上面的代碼是從來沒有射擊帶來的會話信息從數據庫中。
從params-packed會話id和真實性令牌中得到什麼祕訣(它們不是從params中拾取的)?
考慮到我對得到這個工作多少時間,我已經投資了它是如何接近,我希望得到的答案,如果在所有可能的原題。我看了一下機架中間件頁面,雖然它在代碼中給出了一個工作示例,但是沒有一個可以檢查以供參考的運行示例。再說一遍,我寧願讓我目前的問題得到解決,然後把整個事情拋到一邊,然後去做一些新的事情。謝謝,不過。我會把它作爲我的下一個選擇。 – Sniggerfardimungus 2009-08-04 17:35:29