0

我正在将clj-oauth用于一个学校项目,我正在创建一个从 Twitter 读取的桌面客户端。我一直在尝试针对 Twitter 对客户端进行身份验证并获取 PIN,以便我可以在客户端中设置它并忘记它(因为这仅供个人使用,不需要分发)。在我看来,在我请求令牌之后,我应该能够从中打印结果:

(oauth/user-approval-uri consumer 
                         request-token)

然后使用打印的 URI 进行身份验证。但是,每当我尝试将该 URI 粘贴到我的浏览器中时,Twitter 都会给我一个错误,说有人已经使用了我提供的令牌。我已经正确地提供了所有值来创建消费者,然后获取请求令牌。

有没有一种简单的方法可以只使用 CLI 和我的浏览器来获取我的 PIN?

4

2 回答 2

1

我不是很肯定,但我认为您需要在获得请求令牌后获得访问令牌。其中一些在这里进行了解释。

“基于 Pin 的 Twitter OAuth 与原始(网络)OAuth(请求令牌、访问令牌)一样工作,但不是返回网页,Twitter 会给出一个 Pin 码,您必须将其输入到您的应用程序中才能交换它的使用访问令牌请求令牌。”

希望这会有所帮助!

于 2010-11-19T23:13:17.287 回答
0

我在这个库中遇到了同样的问题。user-approval-uri 中有一个小错误。

您可以在我的 fork https://github.com/kurtharriger/clj-oauth上找到修复程序。

查询字符串应该只包含 oauth_token 但正在编写整个地图,为了快速修复一次,您可以在粘贴到浏览器时手动从查询字符串中删除多余的位。

于 2010-12-19T06:02:41.053 回答