标签:blank opened 三种方式 query header cti send http lan
ajax发送csrf_token的三种方式:
方式一:
在ajax发送之前,做好处理,用到了beforeSend方法,把csrf_token写入到Header头内,csrf_token去jquery.cookie内取,但是,想要去cookie内取,首先要引用jquery.cookie.js文件;
jquery.cookie.js官网:http://plugins.jquery.com/cookie/
//ajax在发送之前,做的header头 function csrfSafeMethod(method) { // 匹配method的请求模式,js正则匹配用test return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method)); }; // 为ajax请求做csrf_token $.ajaxSetup({ beforeSend:function (xhr, settings) { // 在请求头设置一次csrf_token,除了上面正则匹配到的不带csrf_token,其他的都要带 if(!csrfSafeMethod(settings.type)){ xhr.setRequestHeader("x-CSRFToken", $.cookie("csrftoken")); } } });
浏览器同源策略
标签:blank opened 三种方式 query header cti send http lan
原文地址:http://www.cnblogs.com/Neeo/p/7677958.html