使用以下两种方式有什么区别:
$.ajax({
type: 'POST',
url: Drupal.settings.basePath + 'module/get/' + node,
dataType: 'json',
data: { 'ajax' : true }
});
对比:
$.ajax({
type: 'POST',
url: Drupal.settings.basePath + 'module/get',
dataType: 'json',
data: { 'ajax' : true, 'node' : node }
});
在第一种情况下,您将在回调函数中将节点变量作为参数访问,在第二种情况下,您将使用$ _POST ['node']进行访问,对吗?第二种方法总是更好,但我看到很多人都是用第一种方法。并不是说第二种方式更安全。仍在研究表单令牌,但首先要弄清楚这个基本点。
另外,对于情况1,假设此ajax由按钮触发,如何阻止人们直接输入网址mysite/module/get/20并激活它?只需检查$ _POST ['ajax'] == true是否足以解决这个问题?还是那里仍然存在安全漏洞?