我使用Devise和Omniauth,並關注它的railscast(http://railscasts.com/episodes/235-devise-and-omniauth-revised)。它只處理:uid,:provider。沒有涉及令牌(來自Oauth2)? (https://github.com/intridea/omniauth/wiki/Auth-Hash-Schema)如何處理Omniauth中的訪問令牌(來自Auth哈希)?
所以,問題是,如何處理訪問令牌?例如,我使用omniauth-qq(https://github.com/beenhero/omniauth-qq)。你可以看到在驗證散列中有[:credentials] [:token]
順便說一下,我只使用omniauth來登錄用戶。
更新: 我的意思是我不知道如何處理軌道中的令牌。例如,將它存儲在會話或其他內容中?這是我的代碼,我根本沒有處理過這個問題。有沒有任何示例可以看到如何使用令牌?
def self.from_omniauth(auth)
where(auth.slice(:provider, :uid)).first_or_create do |user|
user.provider = auth.provider
user.uid = auth.uid
user.name = auth.info.nickname
user.image = auth.info.image
end
end
我可能得不到我的主意。我只是不知道如何在我的代碼中使用訪問令牌,比如稍後將它存儲在會話中並更新。看我的更新。 – cqcn1991 2013-03-28 09:51:33
可能你可以只存儲在你的cookie或數據庫以及我猜(由於安全cz,如果黑客得到它,它可能使用令牌caputre信息)..但你需要一個方法來處理訪問令牌,因爲它可能已過期,對於臉書,默認爲2小時,但不確定當前文檔是否更改。 – Nich 2013-03-28 13:11:04
是否有任何示例要遵循?我不太清楚如何處理它......謝謝! – cqcn1991 2013-03-28 13:34:09