【Django】Django-allauthでLINEからemailを取得し保存したい
解決したいこと
Djnago-allauthを使いソーシャルログインを実装しているのですが、LINEの場合、scopeにプロパティの値としては返してくれないので取得・保存ができません。
LINEでログインしたユーザーのemailフィールドにメールアドレスを取得・保存する方法を教えて下さい><
発生している問題・エラー
emailを取得・保存できない状態で実装すると、emailフィールドが空白になるため、別の方が新しくLINEでログインをした場合、emailの一意性のエラーが返ってきます。(空白のemailな為)
該当するソースコード
INSTALLED_APPS = [
#....
'allauth.socialaccount.providers.line',
]
SOCIALACCOUNT_PROVIDERS = {
'line': {
'SCOPE': [
'profile',
'openid',
'email',
],
}
}
自分で試したこと
googleで色々調べたのですが、allauthでLINEのemailを取得する記事はまだ無いようでした><
LINEのドキュメントには、
LINEログインのチャネルIDをエンドポイントに送信するだけで、IDトークンを検証し、ユーザーのプロフィール情報とメールアドレスを取得できます。
とあるのですが、
- allauthでどうやってチャネルIDを送信するのか?
- allauthでどうやってIDトークンの検証しemailを取得・保存するのか?
がわかりません・・・
allauthとは別で何かファイルやコードが必要なのでしょうか?
ご教授頂ければ幸いですm(_ _)m