2009-06-19 41 views
7

我注意到一些Web应用程序返回AJAX响应,JSON数据嵌入到注释块中。例如,这将是示例响应:有关JSON响应的评论块

/*{ 
"firstName": "John", 
"lastName": "Smith", 
"address": { 
    "streetAddress": "21 2nd Street", 
    "city": "New York", 
    "state": "NY", 
    "postalCode": 10021 
}, 
"phoneNumbers": [ 
    "212 555-1234", 
    "646 555-4567" 
]} */ 

将JSON数据嵌入到注释块中的好处是什么?有没有这样做可以避免某种安全漏洞?

回答

7

这样做的目的是为了避免第三方网站使用<script>标记劫持您的数据并覆盖Object构造函数以获取构建的数据。

当JSON数据被注释包围时,它不再可以通过<script>标记直接执行,从而“更安全”。

看到http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdf的PDF了解更多信息(举例)

+0

的链接似乎被打破。你能否提供另一个参考? – Lijo 2014-09-09 02:30:35