futureed/oauth2 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

futureed/oauth2

Composer 安装命令:

composer require futureed/oauth2

包简介

FutureED OAuth2 provee la lógica requerida para realizar una autorización mediante el uso del protocolo OAuth2. Este paquete esta diseñado exclusivamente para la plataforma FutureED y sus derivados.

README 文档

README

Introducción

FutureED OAuth2 provee la lógica requerida para realizar una autorización mediante el uso del protocolo OAuth2. Este paquete esta diseñado exclusivamente para la plataforma FutureED y sus derivados.

======

Licencia

FutureED OAuth2 es software de código abierto bajo una licencia MIT.

======

Documentación Oficial

Además de la autenticación típica, basada en formularios, Laravel también proporciona una manera simple y conveniente para autenticarse con los proveedores de OAuth utilizando FutureED OAuth2. Esta implementación permite realizar el inicio de sesión y el acceso a las aplicaciones derivadas de la plataforma FutureED.

Para realizar la instalación agrega a tu archivo composer.json la dependencia:

composer require futureed/oauth2

======

Configuración

Después de instalar la librería FutureED/OAuth2, en tu archivo de configuración config/app.php registra el siguiente ServiceProvider:

'providers' => [
  // Proveedores de servicios instalados
  FutureED\OAuth2\FutureEDServiceProvider::class,
],

Además, añade el facade FutureED al arreglo de alias en tu archivo de configuración:

'FutureED' => FutureED\OAuth2\Facades\FutureED::class,

En el archivo config/services.php registra el siguiente servicio:

'FutureED' => [
  'client_id' => env('FUTUREED_CLIENT_ID'),
  'client_secret' => env('FUTUREED_CLIENT_SECRET'),
  'redirect' => env('FUTUREED_REDIRECT'),
],

Para finalizar, en el archivo de entorno (.env) coloca las credenciales proporcionas en el Panel de Desarrolladores de FutureED:

FUTUREED_CLIENT_ID=ID_ASIGNADO
FUTUREED_CLIENT_SECRET=SECRET_ASIGNADO
FUTUREED_REDIRECT_URI=URL_DE_REDIRECCION #Esta URL debe concidir con la ruta generada por Route::get('/oauth/callback', 'Auth\AuthController@callback');

======

Uso Básico

Se necesitan dos rutas: una para redireccionar el usuario al Proveedor de OAuth, y otra para recibir la respuesta después de la autorización: En tu archivo app/Http/routes.php:

<?php
Route::group(['middleware' => ['web']],
  Route::get('/oauth/futureed', [
    'as' => 'redirectToFutureED',
    'uses' => 'Auth\AuthController@redirectToFutureED'
  ]);
  Route::get('/oauth/callback', 'Auth\AuthController@callback');
);

En tu controlador:

<?php
namespace App\Http\Controllers;
use FutureED;
use Illuminate\Http\Request;

class AuthController extends Controller
{
  /**
   * Redirecciona al usuario a la pagina de autenticación de FutureED.
   *
   * @return Response
   */
  public function redirectToFutureED()
  {
    return FutureED::driver('FutureED')->redirect();
  }

  /**
   * Obtiene la informacion del usuario de FutureED.
   *
   * @return Response
   */
  public function callback(Request $request)
  {
    $user = FutureED::driver('FutureED')->user($request);
    // $user->token;
  }
}

Es importante aclarar que los nombres de las rutas, métodos y controladores pueden variar de acuerdo a tus necesidades.

Obteniendo los detalles del usuario

Una vez que la respuesta ha sido satisfactoria se puede accesar a la información del usuario de la siguiente manera:

$user->email; // obtiene el correo electronico del usuario en formato de cadena de texto
$user->getEmail(); // obtiene el correo electronico del usuario en formato de cadena de texto.
Otros atributos obtenidos
$user->id;
$user->token;
$user->nickname;
$user->first_name;
$user->last_name;
$user->email;
$user->avatar;

统计信息

  • 总下载量: 83
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-02-25

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固