dev-ratna/phalcon-social

一个用于实现社交登录的Phalcon组件

dev-master 2017-05-09 18:06 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:44:32 UTC


README

Phalcon的社交登录包装器(基于Laravel的Socialite)

安装

composer require dev-ratna/phalcon-social

配置

默认情况下,包装器在主配置文件中搜索 social 键。

配置应使用 facebookgoogle 或供应商的别名作为键。

'social' => [
  'facebook' => [
        'client_id' => 'client-id-here',
        'client_secret' => 'client-secret-here',
        'redirect_uri' => 'url/to/redirect'
    ],
    'google' => [
        'client_id' => 'example-id',
        'client_secret' => 'example-secret',
        'redirect_uri' => 'url/to/redirect'
    ]
  ]

使用方法

服务

use PhalconSocial\PhalconSocial;

$di->setShared('socialLogin', function(){
    $socialLogin = new SocialLogin();
    return $socialLogin;

});

路由

$router->add('/social/oauth/redirect', [
	'controller' => 'controller',
	'action' => 'redirect'
]);

$router->add('/social/oauth/login', [
	'controller' => 'controller',
	'action' => 'login'
]);

在控制器中

<?php

namespace Namespace\Controllers;


class Controller extends ControllerBase
{

    public function redirectAction()
    {
        $this->socialLogin->useProvider('google')->redirect();
    }

    public function loginAction()
    {
    	$user = $this->socialLogin->useProvider('google')->authorize()->user();
    }
}

添加自己的提供者

正在进行中。

目前该包仅支持Google和Facebook,更多即将到来。