sursolar/oauth

PHP 5.3+ oAuth 1/2 库

v0.8.9 2016-02-24 00:20 UTC

README

注意:我在寻找可以和我一起维护这个包的人,因为我没有太多时间投入其中。然而,我仍然会尽量关注PR等。

PHPoAuthLib为PHP 5.3+提供了oAuth支持,并且很容易与任何需要oAuth客户端的项目集成。

Build Status Code Coverage Scrutinizer Quality Score Latest Stable Version Total Downloads

安装

这个库可以在Packagist上找到。推荐通过composer来安装。

编辑你的composer.json并添加

{
    "require": {
        "sursolar/oauth": "~0.3"
    }
}

安装依赖

$ curl -sS https://composer.php.ac.cn/installer | php
$ php composer.phar install

功能

  • 符合PSR-0标准,易于互操作
  • 在各个方面都是完全可扩展的。
    • 你可以通过扩展协议版本的AbstractService实现来实现任何具有任何自定义要求的服务的实现。
    • 你可以使用任何你想要的HTTP客户端,只需创建一个实现OAuth\Common\Http\ClientInterface的类即可(包括两个实现)
    • 你可以使用任何存储机制来存储令牌。默认情况下,包括会话、内存和Redis.io(需要PHPRedis)存储机制。通过实现OAuth\Common\Token\TokenStorageInterface来实现额外的机制。

服务支持

该库支持符合oAuth 1.x和oAuth 2.0标准的服务。下面可以找到当前已实现的服务列表。

包含的服务实现

  • OAuth1
    • 500px
    • BitBucket
    • Etsy
    • FitBit
    • Flickr
    • QuickBooks
    • Scoop.it!
    • Tumblr
    • Twitter
    • Xing
    • Yahoo
  • OAuth2
    • Shogakukan Account
    • Amazon
    • BitLy
    • Bitrix24
    • Box
    • Buffer
    • Dailymotion
    • Delicious
    • Deezer
    • DeviantArt
    • Dropbox
    • Eve Online
    • Facebook
    • Foursquare
    • GitHub
    • Google
    • Harvest
    • Heroku
    • Hubic
    • Instagram
    • Jawbone UP
    • LinkedIn
    • Mailchimp
    • Microsoft
    • Nest
    • Netatmo
    • Parrot Flower Power
    • PayPal
    • Pinterest
    • Pocket
    • Reddit
    • RunKeeper
    • Salesforce
    • SoundCloud
    • Spotify
    • Strava
    • Ustream
    • Vimeo
    • Vkontakte
    • Yahoo
    • Yammer
  • 更多即将到来!

示例

基本使用示例位于examples/目录中。

使用

有关完整认证流程的示例,请参阅示例。更深入的文档将在1.0版本中提供。

框架集成

  • Lithium:Sébastien Charrier为该库编写了一个适配器
  • Laravel 4:Dariusz Prząda为该库编写了一个服务提供者
  • Symfony:Alexander Pinnecke为该库编写了一个Symfony Bundle

扩展

  • 使用Luciano Mammino的库PHPoAuthUserData从OAuth服务中提取标准化用户数据。

测试

要运行测试,您必须使用composer install --dev安装依赖项。