Python 尝试使用Emacs23上的w3m登录Django管理页面时出现CSRF错误
我通常使用Firefox,在Django网站的管理页面上没有问题。但是我使用Emacs23来写我的文章,并且希望能够在Emacs中使用w3m来复制内容。当我尝试登录到我的管理页面时,会出现CSRF错误:Python 尝试使用Emacs23上的w3m登录Django管理页面时出现CSRF错误,python,django,emacs,Python,Django,Emacs,我通常使用Firefox,在Django网站的管理页面上没有问题。但是我使用Emacs23来写我的文章,并且希望能够在Emacs中使用w3m来复制内容。当我尝试登录到我的管理页面时,会出现CSRF错误: CSRF verification failed. Request aborted. Help Reason given for failure: No CSRF or session cookie. ... 有没有办法让w3m使用我的管理页面?我不确定问题是在于Django上
CSRF verification failed. Request aborted.
Help
Reason given for failure:
No CSRF or session cookie.
...
有没有办法让w3m使用我的管理页面?我不确定问题是在于Django上的管理员设置方式还是Emacs或w3m设置。Django 1.2在默认情况下要求所有表单帖子都使用。我认为没有办法通过API调用获取令牌,以便能够从Emacs发布
您只需复制并调整django捆绑视图的代码,创建没有装饰器的定制版本,即可消除@protect_csrf装饰器对该视图的影响
我从您上面有限的信息猜测,您需要在这里复制的是contrib.auth的login()方法的非保护版本,我建议您将对该方法的访问置于一个相当不明显的url路径下,以便为外部世界保持某种CSRF的外观。(即,不要在其他地方覆盖/login/path-wire-up访问此视图)我意识到所有表单在w3m上都给出相同的结果,因此我假设我的问题在于w3m及其设置,而不是Django。