为Laravel Socialite提供的TikTok (tiktok.com) OAuth2认证提供者

5.2.0 2024-04-29 01:40 UTC

This package is auto-updated.

Last update: 2024-08-26 21:42:20 UTC


README

composer require socialiteproviders/tiktok

安装与基本用法

请参阅基本安装指南,然后按照以下特定提供者的说明进行操作。

将配置添加到config/services.php

'tiktok' => [
  'client_id' => env('TIKTOK_CLIENT_ID'),
  'client_secret' => env('TIKTOK_CLIENT_SECRET'),
  'redirect' => env('TIKTOK_REDIRECT_URI')
],

添加提供者事件监听器

Laravel 11+

在Laravel 11中,默认的EventServiceProvider提供者已被移除。取而代之的是,在您的AppServiceProviderboot方法中使用Event外观的listen方法添加监听器。

  • 注意:除非您用自己的提供者覆盖了它们,否则不需要为内置的socialite提供者添加任何内容。
Event::listen(function (\SocialiteProviders\Manager\SocialiteWasCalled $event) {
    $event->extendSocialite('tiktok', \SocialiteProviders\TikTok\Provider::class);
});
Laravel 10或以下配置包的监听器以监听`SocialiteWasCalled`事件。

将事件添加到app/Providers/EventServiceProvider中的listen[]数组中。有关详细说明,请参阅基本安装指南

protected $listen = [
    \SocialiteProviders\Manager\SocialiteWasCalled::class => [
        // ... other providers
        \SocialiteProviders\TikTok\TikTokExtendSocialite::class.'@handle',
    ],
];

用法

现在您应该能够像通常使用Socialite一样使用提供者(假设您已安装外观)

return Socialite::driver('tiktok')->redirect();

重要信息

为了正确运行,请确保您有以下权限/作用域获得批准

  • user.basic.info*
  • user.info.profile(可选且推荐,对于username是必需的)
  • user.info.stats(可选且推荐)

返回的用户字段

  • id
  • username(需要权限/作用域 user.info.profile
  • union_id
  • name
  • avatar

参考