0

私は sso に取り組んでいます。リクエストは他のアプリケーションから送信され、そのリクエストを取得した後、omniauth コールバック コントローラーで 1 つのメソッドを呼び出し、json オブジェクトで応答します。ただし、応答の完了後、それぞれのセッションの updated_at を更新します。それぞれのセッションの updated_at の更新を停止したい。

4

1 に答える 1

0

omn​​iauth はいくつかのセッション タスクを実行するため、セッションは omniauth コールバック後に更新されます。セッションが更新されると、updated_atセッション内の値は Rails によって自動的に (合理的に) 更新されます。

Rails のソース コードをカスタマイズせずに目標を達成することはできないと思いますが、これは明らかに良い考えではありません。

の値を使用したくない場合はupdated_at、無視するか、nil に設定してください。

session[:updated_at] = nil

omn​​iauth コールバックの前に値を保持したい場合:

original_updated_time = session[:updated_at]
YOUR CALLBACK LOGIC
session[:updated_at] = original_updated_time
于 2013-02-26T10:59:06.140 に答える