非常感谢。查了一下,终于明白了。
【 在 dhcn 的大作中提到: 】
: Django的csrf中间件是对所有post请求做跨站请求过滤.正常的做法就是在Form里面加csrftoken tag,这个tag的实际做的事情是加了hidden的input.所以你从cookie里面取csrftoken值往post请求里面加参数的做法和框架本身做的事情一样。看你用的是jquery,其实jquery的参数可以对form整体做序列化,那样的话,直接用csrf tag就ok了。
: 当然有简单的做法,就是把那个view直接用免csrf装饰器注解了,那个view就不再作csrf过滤了.这个不推荐,就像你用get请求模仿数据修改请求一样,以上两者都不推荐,为什么,很简单,如果是UGC站点,对方编辑的时候加一个img链接,基本上你的JS代码能做的事情,它都能做.当然你要真的做CSRF,前提是XSS必须得做好,如果说你连XSS都防不了,CSRF的工作就是摆设。
--
FROM 112.65.211.*