【问题标题】:Twitter Provider, doesn't redirect me into the CallbackTwitter 提供商,不会将我重定向到回调
【发布时间】:2021-01-02 03:46:01
【问题描述】:

Facebook、LinkedIn、Google、GitHub、GitLab、Bitbucket 和许多其他公司都支持 OAuth2 进行基于用户的身份验证。但 Twitter 仍然只使用 Oauth1。

if ($provider === "twitter") {
   return Socialite::driver($provider)
    ->userFromTokenAndSecret(
     env("TWITTER_ACCESS_TOKEN"),
     env("TWITTER_ACCESS_TOKEN_SECRET")
    )
    ->redirect();

遇到这个问题:

Symfony\Component\Debug\Exception\FatalThrowableError
Call to undefined method Laravel\Socialite\One\User::redirect()

我想被重定向到回调中:

https://example.com/api/login/twitter/callback

任何帮助!!

【问题讨论】:

    标签: php twitter-oauth provider laravel-socialite laravel-8


    【解决方案1】:

    您可以使用Socialite::with($provider)->redirect(); 进行重定向。但是您必须先将回调 URL 与您的 ID 一起存储在您的 config/services.php 文件中。

    'twitter' => [
            'client_id' => env('TWITTER_CLIENT_ID'),
            'client_secret' => env('TWITTER_CLIENT_SECRET'),Client Secret
            'redirect' => env('TWITTER_CALLBACK_URL'),
        ],
    

    然后在你的回调函数Socialite::driver($provider)->user();里面获取用户。

    【讨论】:

    • 嗨@Kavinda Perera,我已经用过了:Socialite::driver($provider)->user(); 非常感谢!!
    猜你喜欢
    • 2021-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-03
    • 2020-12-26
    • 2021-11-29
    • 2018-10-11
    相关资源
    最近更新 更多