0

Facebook ログインを自分のサイトに python-social-auth で統合しようとしています。

これは私のsetting.pyファイルです:

# Application definition

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog',
    'social.apps.django_app.default',
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
)

ROOT_URLCONF = 'boeldev.urls'

WSGI_APPLICATION = 'boeldev.wsgi.application'


# Database
# https://docs.djangoproject.com/en/1.6/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': 'boeldev.db',
    }
}



# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.6/howto/static-files/

STATIC_URL = '/static/'

TEMPLATE_DIRS = (os.path.join(os.path.dirname(__file__), 'templates').replace('\\','/'),)

AUTHENTICATION_BACKENDS = (
  'social.backends.google.GoogleOAuth2',
  'social.backends.facebook.FacebookOAuth2',
  'django.contrib.auth.backends.ModelBackend',
)

SOCIAL_AUTH_LOGIN_REDIRECT_URL = '/entries/'
SOCIAL_AUTH_LOGIN_ERROR_URL = '/login-error/'

SOCIAL_AUTH_GOOGLE_OAUTH2_KEY = 'XXXX.apps.googleusercontent.com'
SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET = 'XXXX'

SOCIAL_AUTH_FACEBOOK_KEY = 'XXXX'
SOCIAL_AUTH_FACEBOOK_SECRET = 'XXXX'

SOCIAL_AUTH_PIPELINE = (
    'social.pipeline.social_auth.social_details',
    'social.pipeline.social_auth.social_uid',
    'social.pipeline.social_auth.auth_allowed',
    'social.pipeline.social_auth.social_user',
    'social.pipeline.user.get_username',
    'social.pipeline.mail.mail_validation',
    'social.pipeline.user.create_user',
    'social.pipeline.social_auth.associate_user',
    'social.pipeline.social_auth.load_extra_data',
    'social.pipeline.user.user_details',
    'blog.pipeline.get_profile_picture',
)

しかし、Facebookでログインした後、次のエラーが発生します。

「指定された URL は、アプリケーションの構成によって許可されていません。: 1 つ以上の指定された URL が、アプリの設定によって許可されていません。ウェブサイトの URL またはキャンバスの URL と一致する必要があります。または、ドメインがアプリのドメインのいずれかのサブドメインである必要があります。 ."

これは私のFacebookの設定です: ここに画像の説明を入力

そのエラーメッセージに関連するstackoverflowには多くの問題があることは知っていますが、それらのどれもが私の問題を解決しました.

私が間違っていることは何ですか?

前もって感謝します!

4

1 に答える 1

2

まず、App Domains空の状態で を入力します。127.0.0.1うまくいかない場合は、 を試してくださいlocalhost(サイト URL にも同じものを使用します)。次に、サイト URL は である必要はありません。http://127.0.0.1:8000/entries/http://127.0.0.1で十分です。localhostドメインに似ているため、この設定を優先します。

于 2014-02-13T04:38:53.040 に答える