Maison >développement back-end >tutoriel php >Laravel OAuth2 第三方登陆(包括 Laravel 中 Facades 和 Service 的简单使用)

Laravel OAuth2 第三方登陆(包括 Laravel 中 Facades 和 Service 的简单使用)

WBOY
WBOYoriginal
2016-06-23 13:25:481001parcourir

前言

本来要求是使用微信进行第三方登陆,所以想着先用 github 测试成功再用微信测试,可是最近拖了好久都还没申请好微信开放平台的 AppID ,所以就只写 github 的第三方登陆吧,估计微信的实现也差不多~

##关于OAuth2

关于OAuth2的理解,推荐大家先去看一下阮一峰的文章理解OAuth 2.0,看完这个之后相信就能对 OAuth2 有了一定的了解,因为在 Laravel 里面很多东西都已经封装好了,如果只是单纯的实现功能感觉并不能学到多少东西,Laravel 使用的授权模式是授权码模式。从 Laravel 的官方文档来看,其实几行代码就能实现第三方登陆的功能,但是不一定能满足我们的项目需求。这篇文章也简单记录了博主在学着使用 Laravel 的 Facaces 和 Service 模式。

开始使用

首先去 github 上面注册一个 Application ,Personal settings->Applications->Developer applications->Register new application 填写相关信息:

然后就可以得到一个 Client ID 和 Client Secret :

在命令行中执行以下命令:

composer require laravel/socialite

然后在config/app.php文件中注册服务提供者和添加 Socialite 的 facade :

'providers' => [   //只有注册了的服务才能用    // Other service providers...    Laravel\Socialite\SocialiteServiceProvider::class,],'aliases' => [   //个人理解Facade就是将一些类的很长的路径用一个单词表示    // Other facades...    'Socialite' => Laravel\Socialite\Facades\Socialite::class,],

然后我们就要到services.php中去配置 github 的 Client ID 和 Client Secret.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn