包含onclick单词的ajax调用参数被禁止

时间:2015-07-01 11:23:20

标签: php jquery ajax

我的ajax电话突然停止工作,没有人接触到代码。

经过一些测试后发现问题是我传递的话是" onclick"在参数字符串中。

这样的东西
$.ajax({
  url: "giveMeMyEntries.php",
  type: "POST",
  data: {searchingFor : "interesting",
         snippetForNoResults : "<span onclick='goAddingANewOne()'>add a new one!</span>"}
});

现在我完全理解这可以通过许多其他方式实现,但我也想了解为什么这个ajax会返回403禁止。

如果我改为&#34; oncick&#34; (是的,只是为了尝试)请求完美无缺。

ajax中禁止使用处理程序关键字吗?从何时起?几个月前这完全正常工作..

谢谢!

的Alessandro

编辑1: 好吧,问题是与服务器有关。

url上的

encodeURI并不能解决问题。参数上的encodeURIComponent再次导致403问题。即使是其他的ajax请求!

我也使用$ .params准备参数,但从未遇到过字符问题。

apache mod-security能否检查请求中是否存在某些单词?

0 个答案:

没有答案