新Twitter API 1.1的身份验证

时间:2013-02-05 17:21:10

标签: api twitter oauth

我有一个应用程序,需要在公共页面上为随机用户显示关注者数量并跟随(users/show.json)(不需要身份验证)。 使用Twitter API 1.0非常简单,因为请求不需要身份验证。随着新的Twitter API 1.1不再可能,所以我需要验证请求(通过OAuth)。

是否只能"认证"应用程序,而不是用户? 我的意思是:我可以避免要求用户登录并仅使用应用程序密钥/密钥进行身份验证吗?或者每次我都需要创建一个带有用户凭据的令牌,创建回调等等?

2 个答案:

答案 0 :(得分:8)

是的,有可能!如果您的应用程序不需要执行诸如发布状态或代表用户发送直接消息等内容,您应该能够使用一组硬编码的Twitter OAuth凭据检索所有用户的公共信息,并且不要求用户进行身份验证。

  • 登录Twitter并转到https://dev.twitter.com/apps
  • 的开发人员信息中心
  • 注册新申请;注册应用程序后,查看应用程序详细信息。您会看到“OAuth工具”标签,您可以在其中找到该应用的所有相关OAuth值:消费者密钥,消费者密钥,访问令牌和访问令牌密钥。
  • 使用这些凭据,您将能够向新的Twitter API发出请求。

如果您不习惯直接使用Twitter API,那么有许多优秀的API包装器用于各种语言 - 其中包括Temboo SDK,它将为您提供调用各种方法的代码片段(以及为您提供安全存储您的Twitter凭据的位置,因此您无需将它们烘焙到您的应用程序中。)

看看:

(完全披露:我在Temboo工作。)

答案 1 :(得分:1)

最简单的方法就是使用Twitter API 1.1的“仅应用程序身份验证”功能,该功能适用​​于大部分API。请参阅 Application-only authentication 。您可以在 get_bearer_token.py 中看到它的Python示例。

获得持有人令牌后,您只需将其包含在请求授权标题中 - 无需签名。