2010-11-01 68 views
0

我已經在我的web項目中成功實現了Twitter oAuth集成,該項目允許用戶使用他的Twitter帳戶註冊和/或登錄。我利用這個庫:Twitter中的oAuth令牌:如何處理持久令牌?

http://twitteroauth.labs.poseurtech.com/connect.php

我只是跟着文檔中的步驟:

http://github.com/abraham/twitteroauth/blob/master/DOCUMENTATION

雖然它工作得很好,有一兩件事我不完全理解。它涉及第7步,我們正在獲得「持久的證書」。該文件建議將這些憑據存儲在數據庫中。

我不清楚這是什麼目的。這是否意味着只要用戶有會話,我就可以使用該令牌訪問Twitter REST API?那麼它會有效地成爲會話令牌嗎?

或者,它會比會話更持久嗎?如果是這樣,我不明白如何使用這個持久的令牌,因爲在登錄場景中,在我可以進行任何API調用之前,我首先需要知道用戶是誰(它需要所有先前的步驟)?

存儲這些持久令牌的目的是什麼,以及如何使用它們?

回答

1

存儲持久令牌的目的是,如果您的用戶使用的登錄身份驗證的不同機制與Twitter或者如果你需要在自己的Twitter賬戶進行操作,而他們沒有活動會話。例如,如果您的用戶使用OpenID或用戶名/密碼進行身份驗證,則每次他們回到您的網站時都不希望讓他們通過使用Twitter流程登錄。如果您提供了一項服務來輪詢RSS feed併發送新條目,則您需要存儲這些令牌,因爲用戶不會與該站點保持活動會話。您需要將與用戶關聯的令牌存儲在數據庫中,以便知道哪些令牌屬於誰。

+0

謝謝亞伯拉罕,真的很有幫助。我想在我的情況下,沒有必要存儲這些令牌,因爲我只使用Twitter API來認證用戶到我的網站。當用戶不在時,我不會進行任何API調用,只需登錄即可。 – Ferdy 2010-11-02 09:13:14