使用多个 OAuth 2.0 提供者授权您的应用程序中的用户

dev-master 2015-05-28 20:27 UTC

This package is auto-updated.

Last update: 2024-09-16 10:26:03 UTC


README

弃用:使用 league/oauth2-client

使用多个 OAuth 2 提供者通过您的应用程序授权用户。

支持的提供者

  • Appnet
  • Facebook
  • Foursquare
  • GitHub
  • Google
  • Instagram
  • Mailchimp
  • Mailru
  • PayPal
  • Soundcloud
  • Vkontakte
  • Windows Live
  • Yandex
  • YouTube

使用示例

在这个示例中,我们将使用 Facebook 对用户进行认证。

$oauth = new \OAuth2\Provider\Facebook(array(
	'id' => 'CLIENT_ID',
	'secret' => 'CLIENT_SECRET',
	'redirect_url' => 'URL_TO_THIS_PAGE'
));

if ( ! $oauth->isAuthenticated()) {
	header("Location: {$oauth->getAuthenticationUrl()}");
	exit;
}

// Tokens
print_r($oauth->getUserTokens());

// User data
print_r($oauth->getUserInfo());

如果一切顺利,你应该会看到用户令牌和数据的输出。

使用 Guzzle 调用 OAuth 2 API

您也可以使用此包使用 Guzzle 调用您的相应 API。

$client = new \OAuth2\Client('https://graph.facebook.com');
$client->setUserTokens($oauth->getUserTokens());

echo $client->get('me')->send();

此示例应显示 API 中的 Facebook 个人资料以及头部信息

贡献

  1. 检查开放性问题或为功能请求或错误打开新问题
  2. 在 Github 上 Fork 仓库 以开始对 develop 分支进行更改(或从它分支出来)
  3. 编写一个测试,以显示错误已被修复或功能按预期工作
  4. 发送拉取请求,并在我合并之前一直打扰我