jenssegers / oauth
基于 Lusitanian/PHPoAuthLib 的 Laravel OAuth 库
v2.0.2
2017-01-25 08:46 UTC
Requires
- php: >=5.4
- illuminate/support: ^4.0|^5.0
- lusitanian/oauth: *
Requires (Dev)
- mockery/mockery: ^0.9
- orchestra/testbench: ^3.0
- phpunit/phpunit: ^4.0|^5.0
- satooshi/php-coveralls: ^0.6
This package is auto-updated.
Last update: 2024-08-25 19:32:53 UTC
README
这是一个 Laravel OAuth 1 和 2 库,使用 PHPoAuthLib。该库共享 Laravel 会话以存储令牌,并支持 Laravel 中引入的服务配置文件。
支持的服务
- OAuth1
- BitBucket
- Etsy
- FitBit
- Flickr
- Scoop.it!
- Tumblr
- Yahoo
- OAuth2
- Amazon
- BitLy
- Box
- Dailymotion
- Dropbox
- Foursquare
- GitHub
- Harvest
- Heroku
- Jawbone UP
- Mailchimp
- Microsoft
- PayPal
- RunKeeper
- SoundCloud
- Spotify
- Ustream
- Vkontakte
- Yammer
安装
使用 composer 安装
composer require jenssegers/oauth
在 app/config/app.php
中添加服务提供者
'Jenssegers\OAuth\OAuthServiceProvider',
在 app/config/app.php
中添加 OAuth 别名
'OAuth' => 'Jenssegers\OAuth\Facades\OAuth',
配置
此包支持通过位于 config/services.php
的服务配置文件进行配置
'facebook' => [
'client_id' => 'your-client-id',
'client_secret' => 'your-client-secret',
'scope' => [],
]
使用方法
添加凭证后,您可以创建如下的 PHPoAuthLib 服务对象
$oauth = OAuth::consumer('facebook');
要覆盖默认的回调 URL 或作用域,请使用
$oauth = OAuth::consumer('facebook', URL::to('url'), ['email', 'publish_actions']);
一旦您有了服务对象,就可以用它来与服务的 API 交互。更多信息请查看 PHPoAuthLib。
示例
Facebook API 的示例用法。
$facebook = OAuth::consumer('facebook');
// Response from Facebook
if ($code = Input::get('code'))
{
$token = $facebook->requestAccessToken($code);
$result = json_decode($facebook->request('/me'), true);
echo 'Your unique facebook user id is: ' . $result['id'] . ' and your name is ' . $result['name'];
}
// Redirect to login
else
{
return Redirect::away((string) $facebook->getAuthorizationUri());
}
更多示例请查看 PHPoAuthLib。