1

我正在尝试在本地计算机上测试联合登录应用程序。我将 django 与Socialauth应用程序一起使用。但是,在 localhost 上登录时,我收到一个 403 Forbidden django 错误页面,通知我“CSRF 令牌 [is] 丢失或不正确”。我假设这意味着我访问的网站未经授权。

您可以在 google域管理页面上添加localhost,但是当您尝试管理该页面时没有任何反应。

那么,有没有办法在本地机器上测试联合登录?

4

2 回答 2

0

错误

“CSRF 令牌 [is] 丢失或不正确。”

就是说,django 期望的 CSRF 令牌丢失或不正确。AFAIK CSRF 令牌功能是不久前添加的,也许您需要更新您的 Django 安装。

于 2010-12-12T21:23:17.710 回答
0

我的错误似乎只是没有添加 CsrfResponseMiddleware。

所以我现在的中间件类settings.py看起来像:

MIDDLEWARE_CLASSES = (
    'django.middleware.common.CommonMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'openid_consumer.middleware.OpenIDMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.middleware.csrf.CsrfResponseMiddleware',
    #'socialauth.middleware.FacebookConnectMiddleware',
)

这消除了错误,一切正常。

于 2010-12-12T21:44:02.707 回答