LoginSignup
1
0

More than 3 years have passed since last update.

SocialiteによるTwitter Login ~ Authorize編

Posted at

概要

LaravelのSocialiteによるTwitter Loginにおいて、"Authenticate"から"Authorize"に変更する方法

環境情報

Laravel: 5.5.50
Socialite: 3.0

詳細

LaravelのSocialiteを用いると、容易にTwitter Loginを実装できますが、
デフォルトでは、"Authenticate"版のTwitter Loginとなります。
これを"Authorize"版のTwitter Loginに変更する方法です。

変更方法

(PJ Directory)/vendor/league/oauth1-client/src/Server/Twitter.phpにおけるurlAuthorization()メソッドを以下のように変更します。

【変更前】

public function urlAuthorization()
{
    return 'https://api.twitter.com/oauth/authenticate';
}

【変更後】

public function urlAuthorization()
{
    return 'https://api.twitter.com/oauth/authorize';
}

AuthenticateとAuthorizeの相違点

Authenticate;
一度Twitter Loginを実施すると、次回以降はログインボタンをクリックした後に、
自動的にログインされるようになります。
そのため、複数アカウントを所有するユーザにとって、使い勝手が悪くなります。
※Twitter側で明示的にログアウトした後に、当該サイトにアクセスしないとアカウントを切り替えられない。
※1アカウントのみで運用しているユーザは使い勝手が良いと思います。
※個人的には情報を覚えられているように感じて、気持ち悪く感じます。

Authorize;
ログインボタンを押すたびに、TwitterアカウントをAuthorizedするかどうか聞かれるようになります。
と言っても、ユーザは毎回ユーザ情報を入力する必要ないので、使い勝手はある程度残ります。

関連情報

Laravel 5.5にSocialiteの最新版を導入しようとすると、
エラーが出ますので、互換性があるSocialite3.0としています

蛇足

今までは身内に教えることのみしていましたが、たまには記事を記載してアウトプットしようかと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0