2014-08-28 86 views
1

我有下面的視圖來登錄用戶。我正在使用flask-wtforms表單。Flask已經禁用了CSRF,但self.errors仍然有錯誤「'csrf_token':['CSRF token missing']」

def login(self, username, password): 
    return self.app.post('/users/login', data=dict(
    email=username, 
    password=password 
    ), follow_redirects=True) 

我已經禁用CSRF在我的配置:

class Config(object): 
SECRET_KEY = ..... 
DEBUG = True 
TESTING = True 
CSRF_ENABLED = False 
SQLALCHEMY_DATABASE_URI = ....... 

,但我仍然得到錯誤{'csrf_token': ['CSRF token missing']}self.errors

這裏有什麼問題?

回答

1

我發現燒瓶wtforms(我讀的文檔太舊)的最新文檔中的解決方案 的配置應該WTF_CSRF_ENABLED不CSRF_ENABLED

4

您正在使用哪個燒瓶WTF的版本?

在版本0.9.0之前,您使用CSRF_ENABLED。 Source。版本> = 0.9.0使用WTF_CSRF_ENABLED。 Source

+0

我之前使用v0.8.3,我不知道該文件是太舊。現在我使用最新版本 – user3985704 2014-08-29 08:30:48

+0

那應該已經修復了。 – Michael 2014-08-29 13:26:18

0

如果您正在使用最新版本爲2015年12月(v0.12),那麼你應該更換SECRET_KEY = ...WTF_CSRF_SECRET_KEY = ...

相關問題