我有部分视图,我在一些网址上提供:
url(r'^main.html$', PartialGroupView.as_view(template_name='main.html'), name='main')
我试图在代码中的其他地方读取该URL:
partial = urllib2.urlopen(partial_url).read()
而不是我想把它发送给用户:
return HttpResponse(partial)
一切正常,但问题是该页面包含一个csrf令牌,之后,当用户获取发送给他的页面时,他尝试提交表单,但是当他这样做时,错误是抛出,说令牌丢失或不正确。在第一步,如果我只使用此方法将视图发送给用户,则令牌正常工作。
当我以这种方式阅读页面时,有没有办法保留该令牌?或者有没有其他方法来阅读页面而不违反csrf?
个人解决方案:
在我的情况下,我决定有一个更好的方法,并放弃从网址阅读HTML。我只是这样发送部分:
render(request, demanded_partial_name)
因为它在本地可用。