Torando源码解析之XSRF防护的实现
Tornado开启XSRF防护的方法
http://tornado-zh.readthedocs.io/zh/latest/guide/security.html
核心代码如下
Tornado开启xsrf_cookies
settings = {
"cookie_secret": "__TODO:_GENERATE_YOUR_OWN_RANDOM_VALUE_HERE__",
"login_url": "/login",
"xsrf_cookies": True,
}
application = tornado.web.Application([
(r"/", MainHandler),
(r"/login", LoginHandler),
], **settings)
HTML页面添加相关的代码
<form action="/new_message" method="post">
{% module xsrf_form_html() %}
......
</form>
源码解析
在上述的代码中,很明显可以看出,所谓开启xsrf防护,其实就是在post提交的数据里面带上 {% module xsrf_form_html() %} 这段代码所包含的东西
xsrf_form_html()是什么
找到tornado的目录,然后再该目录下通过linux命令找到xsrf_form_html