Django All-AuthのFacebookソーシャル統合の設定に問題があります。私は正常にGoogleのログインを設定しているので、私はなぜ1つが動作し、もう1つは動作しないのかについて迷っています。私はFacebookが多くの可能なオプションを持っているので、それがsettings.pyの私のFacebookの設定のせいかもしれないと思う。Django All-Auth Facebookインテグレーション
イベント概要:私のウェブサイト上でFacebookのボタンで
- [ログイン]をクリックして
- ブラウザは、ログインのためのFacebookのウェブサイトにリダイレクトし、そしてFacebookはパスワードを要求します。
- パスワードを受け入れる
- ブラウザは私のウェブサイトにリダイレクトされますが、「ソーシャルネットワークログインの失敗、ソーシャルネットワークアカウント経由でログインしようとしてエラーが発生しました」というエラーが表示されます。
- ログインは
私は正確に問題の原因を診断することができますどのように任意のアイデアを失敗しましたか?
例のウェブホストメッセージ:
[16/Nov/2016 02:14:37] "GET /accounts/facebook/login/callback/?code=AQArXlYq-4K8
UBnuACFQZK39HvVAkZzYpnkP4hI223Y5kA1JmmjdF5yOeVHnrDRpxMOPFNviDzYeSSBvWccALZHGTl-8
7_A1-jtwpDF0UdgoGSVVd9KsrGrQDrHi0i6X9l_pO76-_Ro0N8ePr4L7uUd2G3aWAlZVtAKNNPG1kNBf
OIwhb_RFRJrFvdLA5TlUXaGFdkEsRdMawyG8tdAstXdm5FcxKBRYMOE98j3yalHm5oLLeXOMKJ14EdDw
8-DHU6f5Ze1DWaWWUd-3MFP-NvF2sG4XbA6n5McPrLgYZKb_YG8Slqgo5GDVrKHT1tNedzgceCjjDXT3
TfbzZc9e-aQT9EycKAdGDr1TkKw9lO-Lqw&state=5WqSSFEKy5bc HTTP/1.1" 200 8243
例URLのFacebookからの復帰後:
http://127.0.0.1:8000/accounts/facebook/login/callback/?code=AQArXlYq-4K8UBnuACFQZK39HvVAkZzYpnkP4hI223Y5kA1JmmjdF5yOeVHnrDRpxMOPFNviDzYeSSBvWccALZHGTl-87_A1-jtwpDF0UdgoGSVVd9KsrGrQDrHi0i6X9l_pO76-_Ro0N8ePr4L7uUd2G3aWAlZVtAKNNPG1kNBfOIwhb_RFRJrFvdLA5TlUXaGFdkEsRdMawyG8tdAstXdm5FcxKBRYMOE98j3yalHm5oLLeXOMKJ14EdDw8-DHU6f5Ze1DWaWWUd-3MFP-NvF2sG4XbA6n5McPrLgYZKb_YG8Slqgo5GDVrKHT1tNedzgceCjjDXT3TfbzZc9e-aQT9EycKAdGDr1TkKw9lO-Lqw&state=5WqSSFEKy5bc#_=_
Facebookの有効なOAuthのリダイレクトURI:
Facebookのセッティング:
- クライアントのOAuthログイン -
管理者設定を有効 -
- クライアントID、シークレットIDの入力
- サイトはlocalhost
Settings.pyアプリとして1セット:
INSTALLED_APPS = [
'home',
# Django Standard Apps
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# Django Crispy forms
'crispy_forms',
# Django allauth
'django.contrib.sites',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.facebook',
'allauth.socialaccount.providers.google',
]
Settings.py社会:
SOCIALACCOUNT_PROVIDERS = \
{
'facebook':
{'METHOD': 'oauth2',
'SCOPE': ['email', 'public_profile'],
'AUTH_PARAMS': {'auth_type': 'reauthenticate'},
#'FIELDS': [
#'id',
#'email',
#'name',
#'first_name',
#'last_name',
#'verified',
#'locale',
#'timezone',
#'link',
#'gender',
#'updated_time'],
'EXCHANGE_TOKEN': True,
#'LOCALE_FUNC': 'path.to.callable',
'VERIFIED_EMAIL': False,
'VERSION': 'v2.4'},
'google':
{ 'SCOPE': ['profile', 'email'],
'AUTH_PARAMS': { 'access_type': 'online' } }
}
異なるリダイレクトURIを使用してこの構成をSSLを使用したテストサーバーにアップロードしましたが、それでも同じ問題があります。どのように私はこれを修正することができる任意のアイデア?
私はPython 3.5.2を実行しており、最新のpipはall-auth用にインストールされています。
おかげ スティーブン
ご意見ありがとうございます。私はFacebookのアプリを再作成し、設定を入力し、それは突然働き始めた。 – Stephen