, 내가 설정 한 소셜 네트워크 로그인, 작동하지 않는 몇 가지 이유 트위터 구글, 페이스 북과 트위터,장고 - allauth 0.8.1 트위터 통합
구성
설정 평
012DEBUG = True
SOCIALACCOUNT_QUERY_EMAIL="ACCOUNT_EMAIL_REQUIRED"
TEMPLATE_CONTEXT_PROCESSORS = (
'django.contrib.auth.context_processors.auth',
"allauth.account.context_processors.account",
"allauth.socialaccount.context_processors.socialaccount"
)
AUTHENTICATION_BACKENDS = (
"django.contrib.auth.backends.ModelBackend",
"allauth.account.auth_backends.AuthenticationBackend",
)
INSTALLED_APPS = (
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.facebook',
'allauth.socialaccount.providers.google',
'allauth.socialaccount.providers.twitter',
)
# Social login
SOCIALACCOUNT_PROVIDERS = \
{ 'facebook':
{ 'SCOPE': ['email', 'publish_stream'],
'AUTH_PARAMS': { 'auth_type': 'reauthenticate' },
'METHOD': 'js_sdk'},
'google':
{ 'SCOPE': ['https://www.googleapis.com/auth/userinfo.profile','https://www.googleapis.com/auth/userinfo.email'],
'AUTH_PARAMS': { 'access_type': 'online' } }
}
# django-allauth settings
EMAIL_CONFIRMATION_DAYS = 7
ACCOUNT_AUTHENTICATION_METHOD = "username"
ACCOUNT_EMAIL_REQUIRED=False
ACCOUNT_EMAIL_VERIFICATION=False
ACCOUNT_USER_DISPLAY=lambda user: user.profile
urls.py은 (단축) (단축) 383,879,
트위터 앱 설정
http://my_domain.com/accounts/twitter/login/callback/
소비자 키 및 소비자 비밀도/관리/socialaccount/소셜 앱/
버전에 구성됩니다 장고 - allauth == 0.8.1
로그인 화면에서 Twitter 버튼을 클릭하면 "Social Network Login Failure"라는 제목의 페이지가 표시됩니다. 디버그 화면이 없으며 Google 또는 Facebook을 사용하여 로그인 할 수 있습니다.
이 페이지의 URL은 다음과 같습니다 http://my_domain.com/accounts/twitter/login/callback/?oauth_token=leC3t4BYr9KVAyW22ixxxxxxyVyOHiqaUnIhXwoyRM&oauth_verifier=WdDAwxpxxxxxMzWAr5tcx3mUfZ63304fsxxxx16qKM
나는 신선한 장고 프로젝트에 최신 장고 - allauth을 시도해야하며, 모든 것이 잘 작동합니다. 이것은 아마도 버전 간의 불일치 일 수 있습니다. 장고 == 1.4.1 django-allauth == 0.8.1 파이썬 2.6 (및 2.7.3) –
수동으로 발생하는 오류는 views.py 84 행의 https : //github.com/pennersr/django-allauth/blob/master/allauth/socialaccount/providers/oauth/views.py#L84 OAuthError/accounts/twitter/login/callback/ 에서 개인 자료에 액세스 할 수 없음 "api.twitter.com". 요청 방법 : \t http://127.0.0.1:8000/accounts/twitter/login/callback/?oauth_token=sJ1VbozWsHPPMPHHr5xxxSly5vxxxxoauth_verifier=7EkHIxxxxxUsooYqS9HHHTTAFJkExxxxxx4sMUZQGY 장고 버전 : \t 1.4.1 예외 유형 : \t이 요청 URL GET \t OAuthError을 예외 값 : \t "api.twitter.com"의 개인 자원에 대한 액세스 권한이 없습니다. Python 버전 : \t 2.7.3 –