2

Twitter OAuth 1.0a 流程需要在经过身份验证后authenticated request token进行交换。access tokenconsumer or clientuser

我面临的问题是产生access token需求authenticated request token,但是来自 apirequest token secretverifier响应oauth/authentication没有request token secret。那么如何临时保存来自oauth/request_tokenapi 调用的请求令牌秘密,以便我可以在oauth/access_tokenapi 调用中使用它。

我从探索中找到了一些解决方案,例如运行缓存服务器(Memcached、Redis)或使用django 会话功能。但对于这项任务,他们似乎都过分了。

我希望找到一个更简单的解决方案。

4

1 回答 1

1

我相信你很久以前就知道了,但只是为了将来的 goolers:我决定走一条技术含量更低的路线,并创建一个 OAuth 令牌类,其中包括获取和访问令牌的字段。基本上我获取获取的令牌,存储它,然后在访问时调用它(因为它在不同的视图中),然后保存访问令牌。一旦(如果)成功了,我就删除了获取的令牌。

可能有一种更迷人的方式来做到这一点,但如果你对命名约定很聪明,你可以很容易地保持它们的正确性(即为提供者添加一个 CharField 并将获取的令牌保存为 twitter_fetched,并将访问令牌保存为 twitter) .

这具有额外的好处,允许您从存储的访问令牌创建 OAuth1 或 OAuth1Session。

于 2016-06-14T00:58:14.657 回答