stanwarri / larasocialplus
此包最新版本(dev-master)没有可用的许可信息。
dev-master
2016-04-18 15:48 UTC
Requires
- illuminate/console: 5.2.*
- illuminate/contracts: 5.2.*
- illuminate/session: 5.2.*
- illuminate/support: 5.2.*
Requires (Dev)
- phpunit/phpunit: 4.*
This package is not auto-updated.
Last update: 2024-09-24 04:38:38 UTC
README
安装
将此添加到您的 composer.json
文件中
Laravel 5.2
"stanwarri/larasocialplus": "dev-master"
Laravel 5.1
"stanwarri/larasocialplus": "1.0.0"
服务提供者
将此添加到您的 config/app.php
中的服务提供者列表
'Stanwarri\SocialPlus\SocialPlusServiceProvider'
运行以下命令
$ php artisan vendor:publish --provider="Stanwarri\SocialPlus\SocialPlusServiceProvider"
社交提供者
[待办 - 从 Socialite 中提取]
在 config/services.php
中添加提供者配置
"facebook": {
"client_id": "...",
"client_secret": "..."
}
处理器
处理器是 SocialPlus 在您的应用程序中执行自定义行为的一种方式
在预授权(授权请求)和后授权(回调请求)期间。
在这里,您可以实现您的登录流程等。
处理器在 config/socialplus.php
中注册,如下所示
<?php
return [
'authorize_handlers' => [
'login' => App\Handlers\SocialPlus\LoginHandler::class
]
];
建议:处理器应放在 app/Handlers/SocialPlus
文件夹中
示例处理器
namespace App\Handlers\SocialPlus;
use Stanwarri\SocialPlus\AuthorizeHandler;
use Laravel\Socialite\Contracts\User as SocialiteUser;
class LoginHandler implements AuthorizeHandler
{
public function authorize($provider)
{
// Called before any request is made to the provider
}
public function callback(SocialiteUser $socialiteUser, $accessToken, $provider)
{
// Executed after a successful authorization
}
public function exception($exception, $provider)
{
// Executed when an exception occurs / authorization fails
}
}
完成处理器注册后,您可以创建如下链接;
// - route('socialplus.authorize', ['provider' => 'facebook', 'a' => 'login'])
// - Like So:
<a href="{{ route('socialplus.authorize', ['provider' => 'facebook', 'a' => 'login']) }}">Login With Facebook</a>
注意 'a' 参数吗?... 这就是您用来连接我们刚刚创建的处理器并
这告诉 SocialPlus 使用哪个处理器执行该特定操作。
贡献
[WIP] 此文档是正在进行中的工作,非常欢迎贡献。 :)