【问题标题】:Simplest way of doing an OAuth 1.0 request in PHP?在 PHP 中执行 OAuth 1.0 请求的最简单方法?
【发布时间】:2013-11-29 01:26:48
【问题描述】:

我正在编写一些示例 PHP 代码,说明如何使用需要经过 OAuth 1.0 身份验证的 POST 请求的 an API

我有消费者密钥和秘密,还有一个访问令牌和秘密。这些是特定于我使用 API 的应用程序,我不需要用户进行 OAuth 舞蹈来获得唯一的访问令牌/秘密。

使用 python,我可以做这样的事情:

import oauth2 as oauth

consumer = oauth.Consumer(key='myCONSUMERkey', secret='myCONSUMERsecret') 
token = oauth.Token(key='myACCESStoken', secret='myACCESSsecret')
client =  oauth.Client(consumer, token)

response, data = client.request(
                        'http://example.org/api/endpoint,
                        method='POST',
                        body='Hello World!',
                        headers={'Content-Type': 'text/html; charset=utf-8'})

但我不知道如何使用 PHP 来做到这一点。我见过很多 PHP OAuth 库的示例,但它们都是 2 或 3 条腿的示例,与我需要做的不匹配(即,使用现有的访问令牌和密码)。

我宁愿不使用PHP OAuth extension,因为对于一些快速示例代码,安装它似乎很复杂。

【问题讨论】:

  • 扩展文档中用于获取的示例似乎并不比您的 python 示例复杂得多us3.php.net/manual/en/oauth.fetch.php
  • 抱歉,我可能不太清楚(我会更新问题) - 对于一段示例代码,安装 PECL 扩展似乎过于复杂,其中只有一小部分是关于 OAuth。我希望有一个可以下载的库和required。但是我已经有几年没有做很多 PHP 了,也许安装 PECL 扩展是现在所有 PHP 开发人员都知道的事情?

标签: php oauth


【解决方案1】:

我会推荐Guzzleoauth plugin,看起来很简单,你可以用Composer 安装它。

【讨论】:

  • 谢谢,虽然为了我可以使用它的 OAuth 插件而使用整个框架似乎有点过头了...
  • 它是一个 http 客户端,无论如何你都将需要它,与在 python 中引入 Oauth2 似乎没有太大区别?
  • 啊,我很抱歉——我没有正确阅读它,并认为它是一个 CodeIgniter 风格的框架。我会好好看看。
猜你喜欢
  • 2011-12-19
  • 1970-01-01
  • 2018-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 2020-01-20
  • 1970-01-01
相关资源
最近更新 更多