morrelinko / laravel5-socialplus
此包已被废弃,不再维护。没有推荐替代包。
此包的最新版本(dev-master)没有提供许可证信息。
dev-master
2015-07-31 07:49 UTC
Requires
- illuminate/console: 5.1.*
- illuminate/contracts: 5.1.*
- illuminate/session: 5.1.*
- illuminate/support: 5.1.*
Requires (Dev)
- phpunit/phpunit: 4.*
This package is not auto-updated.
Last update: 2024-08-03 16:50:38 UTC
README
安装
将此内容添加到您的 composer.json
文件中
将此内容追加到您的 config/app.php
文件中服务提供者列表
'Morrelinko\SocialPlus\SocialPlusServiceProvider'
运行以下命令
$ php artisan vendor:publish --provider="Morrelinko\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 Morrelinko\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] 这份文档还在进行中,非常欢迎贡献。 :)