in my opinion current Tornado documentation should be changed regarding xfrs sample in "overview" page.
If xsrf_cookies is set, the Tornado web application will set the _xsrf cookie for all users and reject all POST, PUT, and DELETE requests that do not contain a correct _xsrf value. If you turn this setting on, you need to instrument all forms that submit via POST to contain this field. You can do this with the special function xsrf_form_html(), available in all templates:
<form action="/new_message" method="post">
{{ xsrf_form_html() }}
<input type="text" name="message"/>
<input type="submit" value="Post"/>
</form>
but auto-escaping now it's true by default, so examples, should be written using {% raw xsrf_form_html() %}, shouldn't it?
Thank you,
Antonio