laravel 实现微博第三方登陆

laravel 实现微博第三方登陆

https://blog.csdn.net/a12541254/article/details/79415550

1.安装

composer require socialiteproviders/weibo

2.添加 Service Provider

如果之前添加过 Socialite Provider,得先注释掉:
文件 config/app.php

'providers' => [
//    Laravel\Socialite\SocialiteServiceProvider::class,
    SocialiteProviders\Manager\ServiceProvider::class, // add
],

3.添加 Facades Aliase

如果之前安装 Socialite 时添加过,就不需要再添加了。
还是文件 config/app.php

'aliases' => [
    'Socialite' => Laravel\Socialite\Facades\Socialite::class, // add
],

4.添加事件处理器

文件 app/Providers/EventServiceProvider.php

    protected $listen = [
        'SocialiteProviders\Manager\SocialiteWasCalled' => [
            'SocialiteProviders\Weibo\WeiboExtendSocialite@handle',
        ],
    ];

5.添加路由

文件 app/Http/routes.php

// 引导用户到新浪微博的登录授权页面
Route::get('auth/weibo', 'Auth\AuthController@weibo');
// 用户授权后新浪微博回调的页面
Route::get('auth/callback', 'Auth\AuthController@callback');

6.配置

文件 config/services.php

'weibo' => [
    'client_id' => env('WEIBO_KEY'),
    'client_secret' => env('WEIBO_SECRET'),
    'redirect' => env('WEIBO_REDIRECT_URI'),  
],

 

 

 

文件 .env

WEIBO_KEY=App Key

    WEIBO_SECRET=App secret
    WEIBO_REDIRECT_URI=Callback URL

7.到新浪微博申请加入开发者

    http://open.weibo.com/

    如果只是个人练手第三方登陆,可以不进行审核等操作

laravel 实现微博第三方登陆

    在设置回调地址的时候需要设置完全,最好是设置到方法级别。如果配置了域名的话就不必设置完全

laravel 实现微博第三方登陆

8.代码实现

<?php
namespace App\Http\Controllers\User;
 
use App\Http\Controllers\Controller;
use Socialite;
 
 
class UserAuthController extends Controller
{
    
 
    public function weiboSignInProcess(){
        $redirect_url = env('WEIBO_REDIRECT_URI');
        return Socialite::driver('weibo')->scopes(['user_friends'])->redirectUrl($redirect_url)->redirect();
    }
 
    public function weiboSignInCallbackProcess(){
        $redirect_url = env('WEIBO_REDIRECT_URI');
        $userData = Socialite::driver('weibo')->stateless()->user();
        dd($userData);
    }
 
}

以上内容部分转自:

https://segmentfault.com/a/1190000003103229 

http://socialiteproviders.github.io/providers/qq/

==============================后期出现问题=======================================

laravel 中 InvalidArgumentException Driver [WeiBo] not supported.

laravel 实现微博第三方登陆

laravel 实现微博第三方登陆

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113056.html原文链接:https://javaforall.net

(0)
上一篇 2021年10月25日 下午12:00
下一篇 2021年10月25日 下午12:00


相关推荐

  • 自定义鼠标光标:CSS cursor: url() 使用指南

    自定义鼠标光标:CSS cursor: url() 使用指南

    2026年3月16日
    5
  • linux中wq(linux a)

    LinuxESC:wq和:wq!的区别LinuxESC:wq和:wq!的区别发布者:IT人在线|发表时间:2018-12-417:20:43LinuxESC:wqesc(键退出)->:(符号输入)->wq(保存退出)wq(存盘并退出write%quite)即使文件没有被修改也强制写入,并更新文件的修改时间。:wq和:wq!的区别::wq(保存编辑操作退出)强…

    2022年4月11日
    120
  • Windows命令之tracert命令

    Windows命令之tracert命令tracert 是 Windows 网络中的 TraceRoute 功能的缩写 用于跟踪路由 基本原理是 通过向目标发送不同 IP 生存时间 TTL 值的 ICMPECHO 报文 在路径上的每个路由器转发数据包之前 将数据包上的 TTL 减 1 当数据包上的 TTL 减为 0 时 路由器返回给发送方一个超时信息

    2026年3月16日
    2
  • pycharm 中文乱码_pycharm中文字体设置

    pycharm 中文乱码_pycharm中文字体设置问题:pycarm里面的中文,没有办法正常显示原因:因为Pycharm会使用系统默认的字体,所以当系统中没有这个字体的时候,他就没法显示解决办法:sudoyum-yinstallfontconfig(安装字体库)安装完成后,在/usr/share目录就可以看到fonts和fontconfig目录了寻找中文字体(可以在windows里面找,路径:C:\Windows\Fonts)cd/usr/share/fonts&&sudomakedirchinese

    2022年8月29日
    7
  • 联合索引(多列索引)[通俗易懂]

    联合索引(多列索引)[通俗易懂]联合索引是指对表上的多个列进行索引,联合索引也是一棵B+树,不同的是联合索引的键值数量不是1,而是大于等于2.最左匹配原则假定上图联合索引的为(a,b)。联合索引也是一棵B+树,不同的是B+树在对索引a排序的基础上,对索引b排序。所以数据按照(1,1),(1,2)……顺序排放。对于selete*fromtablewherea=XXandb=XX,显然是可以使用…

    2022年6月3日
    78
  • 如何使用 DeepSeek 构建 AI Agent:终极指南

    如何使用 DeepSeek 构建 AI Agent:终极指南

    2026年3月15日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号