You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 10 Socialite苹果登录报错:Driver [apple] not supported

解决Laravel 10中Socialite Apple登录提示“Driver [apple] not supported”的问题

以下是针对性的排查和解决步骤:

1. 调整事件监听的注册方式

Laravel 10中事件监听的写法可能因细节导致注册失败,可将EventServiceProvider中的数组配置替换为boot方法内手动注册:

public function boot()
{
    parent::boot();

    \Illuminate\Support\Facades\Event::listen(
        \SocialiteProviders\Manager\SocialiteWasCalled::class,
        function ($event) {
            $event->extendSocialite('apple', \SocialiteProviders\Apple\AppleExtendSocialite::class);
        }
    );
}

执行命令清除并重建事件缓存:

php artisan event:clear
php artisan event:cache

2. 验证依赖包完整性

Apple登录Provider依赖socialiteproviders/manager包才能注册Driver,执行命令检查是否安装:

composer show socialiteproviders/manager

若未找到该包,立即安装:

composer require socialiteproviders/manager

3. 彻底清理配置缓存

缓存未更新是常见诱因,执行命令完全清除后重建缓存:

php artisan config:clear
php artisan route:clear
php artisan config:cache

本地测试时可仅执行config:clear关闭缓存,直接测试排除缓存干扰。

4. 检查services.php配置格式

确保config/services.php中的Apple配置无语法错误:

'apple' => [
    'client_id' => env('APPLE_CLIENT_ID'),
    'client_secret' => env('APPLE_CLIENT_SECRET'),
    'redirect' => env('APPLE_REDIRECT_URI'),
],

注意Apple的client_id通常为团队ID.应用包名格式,需确认填写无误。

5. 排查版本兼容性

检查Laravel Socialite和Apple Provider是否兼容Laravel 10:

  • 执行composer show laravel/socialite,确保版本为^5.0(Laravel 10兼容版本)
  • 执行composer show socialiteproviders/apple,确保其支持Socialite 5.x

若版本不兼容,更新对应包到兼容版本后重新测试。

内容的提问来源于stack exchange,提问作者Andrew Waegel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 04:57:03