2010-11-01 70 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