overtrue/laravel-socialite

Laravel 5 的社交 OAuth 认证。

资助包维护!
overtrue

4.1.0 2024-03-13 05:05 UTC

This package is auto-updated.

Last update: 2024-09-13 06:10:56 UTC


README

Laravel Octane Ready Status GitHub release (latest SemVer) GitHub License Packagist Downloads

Sponsor me

安装

$ composer require "overtrue/laravel-socialite"

如果你已经安装了 overtrue/socialite 包,请在执行此命令前从 composer.json 中移除它。

配置

  1. 你还需要添加应用程序使用的 OAuth 服务的凭证。这些凭证应放置在你的 config/socialite.phpconfig/services.php 配置文件中,并应使用 key 为 facebook、twitter、linkedin、google、github 或 bitbucket 的键,具体取决于应用程序所需的提供者。例如
 <?php

 return [
     //...
     'github' => [
         'client_id'     => 'your-app-id',
         'client_secret' => 'your-app-secret',
         'redirect'      => 'http://localhost/socialite/callback.php',
     ],
     //...
 ];

用法

<?php

namespace App\Http\Controllers;

use Socialite;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;

class AuthController extends Controller
{
    /**
     * Redirect the user to the GitHub authentication page.
     */
    public function redirectToProvider()
    {
        return redirect()->to(Socialite::create('github')->redirect());
    }

    /**
     * Obtain the user information from GitHub.
     */
    public function handleProviderCallback(Request $request)
    {
        $user = Socialite::create('github')->userFromCode($request->query('code'));

        // $user->getId();
        // $user->getNickname();
        // ...
    }
}

并注册路由

Route::get('/oauth/github', 'AuthController@redirectToProvider');
Route::get('/oauth/github/callback', 'AuthController@handleProviderCallback');

关于更多用法,请参阅 overtrue/socialite

❤️ 赞助我

Sponsor me

如果你喜欢我的项目并想支持它,点击这里 ❤️

由 JetBrains 支持的项目

非常感谢 JetBrains 善意提供许可证,让我能够从事这个和其他开源项目的工作。

PHP 扩展包开发

想知道如何从头开始构建 PHP 扩展包?

请关注我的实战课程,我将在本课程中分享一些扩展开发经验 —— 《PHP 扩展包实战教程 - 从入门到发布》

许可证

MIT