kingscode / forked-oauth

PHP 8.2 oAuth 1/2 库

dev-master / 0.1.x-dev 2023-06-30 11:02 UTC

This package is auto-updated.

Last update: 2024-08-30 01:44:15 UTC


README

注意:我在寻找能够和我一起维护这个包的人,因为我自己没有很多时间去投入。但是,我仍然会尽量关注PR等。

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

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

安装

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

    composer require lusitanian/oauth

功能

  • PSR-4
  • 在每个方面都可以完全扩展。
    • 您可以通过扩展协议版本的 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
    • Yahoo
  • OAuth2
    • 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
    • Mondo
    • Nest
    • Netatmo
    • Parrot Flower Power
    • PayPal
    • Pinterest
    • Pocket
    • Reddit
    • RunKeeper
    • Salesforce
    • SoundCloud
    • Spotify
    • Strava
    • Stripe
    • Ustream
    • Vimeo
    • Vkontakte
    • Xing
    • Yahoo
    • Yammer
  • 更多即将到来!

示例

    php -S localhost:8000 -t examples

然后将您的浏览器指向

    https://:8000/

使用方法

有关完整认证流程的使用示例,请参阅示例。更详细的文档将在发布 1.0 时提供。

框架集成

  • Lithium:Sébastien Charrier 为该库编写了 适配器
  • Laravel 4:Dariusz Prząda 为该库编写了 服务提供者
  • Laravel 5:Valentin Ivaşcu 将 Dariusz Prząda 的 Laravel 4 库移植到 Laravel 5
  • Symfony:Alexander Pinnecke 为该库编写了 Symfony Bundle

扩展

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

测试

    composer tests