我有一個使用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_user
在該操作中最終爲nil
。
那麼,爲什麼current_user
當登錄的用戶發佈到此操作?我的猜測是有關會話通過SSL的方式,但我不知道我在這裏缺少什麼......
我不知道巫術,但我假設有像身份驗證令牌或會話令牌或類似的東西?如果是這樣,它是否與每個請求一起發送?如果是這樣,它會不會改變? – Vapire
我相信巫術使用會話令牌,說實話我不確定它是如何工作的。 – Andrew
如果您可以在提交表單之前找到會話令牌,請查看瀏覽器中呈現的HTML代碼。如果什麼都沒有,我會說這是一個很好的機會,這是問題... – Vapire