定制 elytica/elytica-socialite 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

elytica/elytica-socialite

最新稳定版本:v1.0

Composer 安装命令:

composer require elytica/elytica-socialite

包简介

Socialite provider for Laravel.

README 文档

README

This package adds elytica socialite driver. To install

composer require elytica/elytica-socialite
php artisan vendor:publish --provider=Elytica\Socialite\ElyticaServiceProvider

Here is an example to use in laravel:

<?php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Models\User;
use Illuminate\Support\Facades\Auth;
use Laravel\Socialite\Facades\Socialite;

Route::get('/', function () {
    return view('welcome');
});

Route::middleware('guest')->group(function () {
    Route::get('/auth/redirect', function () {
        return Socialite::driver('elytica_service')->redirect();
    })->name('elytica_service.auth');

    Route::get('/auth/callback', function () {
       $user = Socialite::driver('elytica_service')->user();
       $authUser = User::updateOrCreate(
           ['email' => $user->getEmail()],
           [
            'name' => $user->getName(),
            'elytica_service_id' => $user->getId(),
            'elytica_service_token' => $user->token,
            'elytica_service_expires_in' => $user->expiresIn,
            'elytica_service_refreshToken' => $user->refreshToken,
           ]
       );
       Auth::login($authUser, true);
       return redirect('/dashboard');
    });

    Route::get('login', function () {
        return view('welcome');
    })->name('login');
});

Route::middleware('auth')->group(function () {
    Route::post('logout', function(Request $request) {
        Auth::guard('web')->logout();
        $request->session()->invalidate();
        $request->session()->regenerateToken();
        return redirect('/');
    })->name('logout');
});

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-05-30