I.T.の
エンジニアブログ

DjangoでLINEログインを実装する

公開: 2020/6/28更新: 2024/12/8

ソーシャルログインはLINEが多いらしい

私が作ったMathQというWebサービスがあるのですが、今までは開発時間短縮のため、 Googleアカウントでのログインしかできませんでした。
でも調べてみるとソーシャルログイン使用率が高いのはLINEらしいということで、 LINEログインもできるようにしようと思いました。

social-auth-app-djangoを調査

ソーシャルログインにはsocial-auth-app-djangoを使っているので、LINE対応できるか調べてみました。
ドキュメントとかには書いてなかったですが、ソースコードを見る限り対応してるっぽいので試してみたらできました。 すでにGoogleの方でやってることをトレースするだけです。
結構面倒かなと思ってたけど意外と簡単でした。

settings.py

SOCIAL_AUTH_LINE_KEY = 'Channel ID'
SOCIAL_AUTH_LINE_SECRET = 'Channel Secret'

AUTHENTICATION_BACKENDS = (
    'social_core.backends.google.GoogleOAuth2',
    'social_core.backends.line.LineOAuth2',
    'django.contrib.auth.backends.ModelBackend',
)

login.html

<a href="{% url 'social:begin' 'line' %}">Line Login</a>

まとめ

Djangoでソーシャルログインを実装したい人は試してみてください。