在Ruby布局文件中的head标签之间加入这么一行<%= csrf_meta_tag %>,可以起到防止跨站点请求的外部攻击的作用。
在页面执行后,它会给html页面添加类似如下两行的代码:
<meta content="authenticity_token" name="csrf-param" />
<meta content="do79QdaDz7OgR45eAjqt8fwxTiAxNrw96qcCpa0lGiI=" name="csrf-token" />
第二行行代码的csrf-token数值是由当前浏览器与服务器之间建立的连接而生成的,与sid有关。
ujs页面的ajax post都会自动附带authenticity_token的字段。