【问题标题】:PHP OAuth 1.0 Library that handles an api key/secret pair and endpoints (request,authorization,and access)处理 api 密钥/秘密对和端点(请求、授权和访问)的 PHP OAuth 1.0 库
【发布时间】:2013-07-04 11:55:34
【问题描述】:

我正在使用需要我们使用 API KEY/PAIR 的 OAuth 1.0 API。此外,它给了我 3 个网址:

  • 请求令牌端点:/oauth/request_token
  • 授权端点:/oauth/authorize
  • 访问令牌端点:/oauth/access_token

文档说明如下:


我们使用最新的 OAuth 1.0 协议规范 (RFC 5849) 来验证我们的 API 请求。我们使用 OAuth 1.0 是因为它是一个开放标准,并且我们将 OAuth 1.0 的“三足”客户端/用户/服务器协议流调整为“双足”客户端/服务器模型。 在我们为经过身份验证的客户端/服务器请求调整 OAuth 时,客户端既充当 API 客户端又充当用户(即,所请求资源的所有者)。 因此,客户端不是使用令牌验证器重定向到客户端,而是充当用户并直接访问服务器以获取 OAuth 验证器。当客户端使用先前获得的验证器获得的访问令牌从服务器请求资源时,会发生可访问性检查。您可以重复使用访问令牌,直到它们过期(两小时后)。令牌过期后,您必须请求新的访问令牌。示例将进一步阐明这一点。


我想找到一个 PHP OAuth 库,它可以使用我对访问第三方公司 API 的 API 要求。我真的不知道如何实现这一点。我目前的想法是对 facebook php api 进行逆向工程,但我不知道它是否使用 3 个端点。此外,在使其运行或将我引导到我可以自己解决的资源方面的一些帮助会很棒。

谢谢!

** 注意:我发现了这个:click here 这可以是我正在寻找的解决方案吗?

【问题讨论】:

    标签: php api access-token consumer


    【解决方案1】:

    Facebook 使用 OAuth 2.0,所以它的 API 是不可能的。 检查here 以获得一些基本的API 参考——例如BitBucket、Twitter 和Yahoo 都使用v1.0a。

    PHP 有一个OAuth Extension,所以如果您正在构建自定义解决方案,您绝对应该从那里开始。您引用的库does provide Two Legged OAuth 乍一看似乎是您的一个选择。 最后一句话的免责声明:我没有使用过这个库,但是我检查了文档。可以在 here 找到一个很好的 UML 序列图解释。它只是一般的 OAuth,不是 PHP 特定的,但确实提供了很好的深入解释。 This GitHub repo 包含用于我的服务的可重用 客户端 - 如果您的客户端是 PHP,您也可以从那里获得一些想法。

    您的案例似乎很有趣,您的问题没有完整的答案。如果我是你,我会先花时间检查你在两条腿部分(而不仅仅是)中引用的 Google 代码 oauth-php 库背后的代码。然后决定您是否应该使用这个库、另一个库或自定义实现。您可能还有其他可能会影响您的决定的要求/阻碍因素(我知道您希望从其他问题中推送一些大量数据。;))2 小时令牌是一个很好的性能优化,但它是否太长了身份验证/授权租约?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-08
      • 1970-01-01
      • 2017-03-23
      • 1970-01-01
      • 1970-01-01
      • 2015-11-18
      相关资源
      最近更新 更多