为什么谷歌会预先附加 while(1);到他们的 JSON 响应?确保 JSON 从不执行确保 JSON 不是有效的 JavaScript始终返回外部带有对象的 JSON以上方法的比较
为什么 Google 会附加到他们的(私有)JSON 响应之前?while(1);
例如,以下是在 Google 日历中打开和关闭日历时的响应:
while (1);
[
['u', [
['smsSentFlag', 'false'],
['hideInvitations', 'false'],
['remindOnRespondedEventsOnly', 'true'],
['hideInvitations_remindOnRespondedEventsOnly', 'false_true'],
['Calendar ID stripped for privacy', 'false'],
['smsVerifiedFlag', 'true']
]]
]
我认为这是为了防止人们在上面做一个,但你真正要做的就是替换它,然后你就会被设置。我假设评估预防是为了确保人们编写安全的JSON解析代码。eval()
while
我也在其他几个地方看到过这个,但谷歌(邮件,日历,联系人等)更是如此。奇怪的是,Google Docs以开头,而Google Contacts似乎以.&&&START&&&
while(1); &&&START&&&
这是怎么回事?