0

認証に Sorcery を使用する Rails 3.2.8 アプリがあります。ソーサリーはcurrent_user、かなり標準的な方法を提供します。

私のアプリにはサブスクリプションがあり、標準的な機知に富んだ方法でほとんど機能します。コントローラーの簡略版は次のとおりです。

class SubscriptionsController < ApplicationController
  before_filter :require_login
  force_ssl

  def show
    @subscription = SubscriptionPresenter.new( current_user )
  end

  def create
    handler = StripeHandler.new( current_user )
    ...
  end

  def destroy
    handler = StripeHandler.new( current_user )
    ...
  end
end

#showアクションは正常に機能しますcurrent_user。しかし、その行動に出てしまうので、今#createはうまくいきませんcurrent_usernil

current_userでは、ログインしているユーザーがこのアクションに投稿すると、なぜnil になるのでしょうか? 私の推測では、セッションが SSL を介して動作する方法について何かを推測していますが、ここで何が欠けているのかわかりません...

4

1 に答える 1

0

私はこれを理解しました。対話していたサードパーティのライブラリで実際にサイレント例外が発生し、その例外がユーザーをログアウトさせる「無許可」リクエストを引き起こしていたことが判明しました。パッチを適用した後、特にコントローラーに問題はなかったことがわかりました。ポインタをありがとう、すべて。

于 2012-11-03T01:13:39.833 に答える