11

Sinatra が Chrome のリダイレクトでセッションを保持しません。まったく新しいセッションを作成していて、以前のセッション データがすべて失われています。

例として(シナトラのドキュメントに似ています)、私は次のようなことをしています:

enable :sessions

get '/foo' do
  session[:user_id] = 123
  session[:session_id] # "ABC", for example

  redirect to('/bar')
end

get '/bar' do
  # this is "DEF" when responding to Chrome (wrong), 
  # but "ABC" when responding to Firefox or Safari (right)
  session[:session_id]

  # this is nil when responding to Chrome (wrong),
  # but 123 when responding to Firefox or Safari (right)
  session[:user_id]
end

これは、リダイレクト応答後のセッションの処理にさまざまなブラウザーがどのように応答するかに関係があると考えています。誰かがこれに似たものを見たことがありますか、またはセッションを使用している間にこれを解決する方法について何か考えがありますか?

前もって感謝します!

4

4 に答える 4

0

すべてのカスタムCookie管理拡張機能がChromeである場合は、それを無効にしてみてください。その後、開発者ツールネットワークでヘッダーを確認します。'Cookie:'フィールドが表示されます。

于 2012-11-17T16:07:44.723 に答える