它可以防止JSON劫持,这是自2011年以来使用ECMAscript 5
在所有主要浏览器中正式修复的主要JSON安全问题。
人为的例子:假设Google有一个类似的URL
mail.google.com/json?action=inbox,它以JSON格式返回收件箱中的前50条消息。由于同源政策,其他域上的邪恶网站无法发出AJAX请求来获取此数据,但是它们可以通过
<script>标记包含URL
。随 您的 cookie 一起访问URL ,并且通过覆盖全局数组构造函数或访问器方法,只要设置了对象(数组或哈希)属性,它们就可以拥有一个被调用的方法,从而允许它们读取JSON内容。
的
while(1);或
&&&BLAH&&&防止这样的:在一个AJAX请求
mail.google.com将具有完全访问的文本内容,并且可以去除它扔掉。但是,
<script>插入标签会盲目地执行Javascript,而不进行任何处理,从而导致无限循环或语法错误。
这不能解决跨站点请求伪造的问题。



