acacha / laravel-social
使用 Laravel Socialite 和 AdminLTE Laravel 包实现社交登录/注册
Requires
- php: ~5.6|~7.0
- acacha/filesystem: ^0.1.1
- doctrine/dbal: ^2.5
- laravel/framework: ^5.4
- laravel/socialite: ^3.0
Requires (Dev)
- phpunit/phpunit: ~4.0||~5.0
- squizlabs/php_codesniffer: ^2.3
This package is auto-updated.
Last update: 2024-09-13 02:53:54 UTC
README
一个用于实现 OAuth 社交登录/注册的 Laravel 5 包,使用 Laravel socialite 和(可选)AdminLTE Laravel 包。
安装
使用 adminlte laravel(推荐选项)
composer global require "acacha/adminlte-laravel-installer" laravel new awesome cd awesome adminlte-laravel install adminlte-laravel social
然后您可以使用以下命令在您喜欢的浏览器中启动您的项目:
llum boot
使用 composer
在您的 Laravel 项目中使用 Composer
$ composer require acacha/laravel-social
将服务提供者添加到 config/app.php 文件中的 providers 数组
Acacha\LaravelSocial\Providers\LaravelSocialServiceProvider::class
然后运行以下命令
php artisan make:social
以配置社交网络提供者。
最后修改您的应用视图以添加使用链接的社交登录
http://yourappurl.com/auth/{socialnetwork}
示例
http://yourappurl.com/auth/github
http://yourappurl.com/auth/facebook
http://yourappurl.com/auth/google
http://yourappurl.com/auth/twitter
http://yourappurl.com/auth/linkedin
我建议您使用 AdminLTE Laravel 包 来实现带有 Adminlte 初始模板的完整 Auth 框架。请参阅前面的部分。
您还可以使用 Laravel 默认的 Auth 框架,运行以下命令:
php artisan make:auth
然后手动添加按钮/链接到社交登录/注册。
使用方法
您可以使用以下命令配置社交提供者
php artisan acacha:social Which social network you wish to configure? [Github]: [0] Github [1] Facebook [2] Google [3] Twitter [4] Linkedin > 0 Configuring social network Github... Please register a new OAuth app for Github. Go to URL https://github.com/settings/applications/new Then ask the following questions: OAuth client id?: > 3a1fg6ac5437f9f4cebd OAuth client secret?: > 5919185e3fb7024e5b10cedce5cce408893224d OAuth client redirect URL? [https://:8080/auth/github/callback]: > File /home/sergi/Code/socialAdminLTEtest/config/services.php updated. Github added to config/services.php file Do you wish to configure other social networks? (yes/no) [yes]:
此向导将适应您的 .env
和 config/services.php
文件以添加您的社交网络 OAuth 数据。
目前,命令 php artisan acacha:social
不会检查您是否已经配置了社交网络,因此在已配置的项目中执行此命令时要小心(不会抛出错误,但您将在配置文件中看到重复的数据)。
要求
请安装 AdminLTE Laravel
composer global require "acacha/adminlte-laravel-installer"
此包还需要(所有都使用 composer 安装)
请参阅相关项目
社交网络
Laravel social 包默认支持以下社交网络
- Github
Laravel social 使用 Illuminate\Support\Manager,因此您可以创建自己的驱动并在 LaravelSocialServiceProvider 中注册该驱动。
如果您创建了新的驱动,请随时创建 Pull Request。
您可以轻松地启用/禁用社交提供者。请参阅以下部分。
启用/禁用社交提供者
在 LaravelSocialServiceProvider
类中,您可以修改 $enabled
字段以更改启用的社交提供者。同时,请记得更改您的视图以添加/删除社交认证的动作/链接。
您还必须更改文件 ConfigureSocialServicesManager 中的静态变量 $socialNetworks
以添加您的额外社交提供者。
Github
命令行向导将建议您访问以下页面
https://github.com/settings/applications/new
以注册新的 OAuth 应用程序。
命令行向导将建议您访问以下页面
https://developers.facebook.com/apps/
以注册新的 OAuth 应用程序。
命令行向导将建议您访问以下页面
https://console.developers.google.com
以注册新的 OAuth 应用程序。请记住激活 Google+ API!。
更多信息请参见 https://developers.google.com/identity/sign-in/web/devconsole-project .
命令行向导将建议您访问以下页面
https://apps.twitter.com/app/new
注册新的OAuth应用程序。在密钥和访问令牌
选项卡中检索您的API密钥,并记住在权限
选项卡中勾选从用户请求电子邮件地址
。
命令行向导将建议您访问以下页面
https://www.linkedin.com/secure/developer
以注册新的 OAuth 应用程序。
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
测试
在您的Laravel项目中执行
$ phpunit tests/AcachaLaravelSocial.php
贡献
请参阅CONTRIBUTING和CONDUCT以获取详细信息。
安全
如果您发现任何安全问题,请发送电子邮件至sergiturbadenas@gmail.com而不是使用问题跟踪器。
鸣谢
许可
MIT许可(MIT)。请参阅许可文件以获取更多信息。