【问题标题】:XHR JSON response starts with forXHR JSON 响应以 for 开头
【发布时间】:2012-06-07 06:54:51
【问题描述】:

我正在查看一些 facebook XHR 请求。我看到有一个跨域的请求,响应是一个JSON,如:

for (;;); {/* JSON object */}

为什么该响应以 for 开头??? 我认为这与某些安全原因有关,有人可以解释一下吗?
谢谢

【问题讨论】:

    标签: ajax json cross-domain


    【解决方案1】:

    这样做是为了防止 XSS。

    如果恶意网站在 <script> 标记中包含该 JSON URL,浏览器将冻结。
    实际的客户站点可以去掉前缀;由于同源政策,其他网站不能。

    【讨论】:

    • 好的,所以,使用 CORS,您可以使用普通的 XHR 请求调用此 JSON,但如果您尝试使用 script 标签将其包含在页面中,浏览器将冻结。对吗?
    • 正确,只是CORS与它无关。
    • 为什么不呢?请求从 facebook.com0-staging.channel.facebook.com 并使用 W3C 的 CORS 文档中指定的标头(Access-Control-Allow-Origin)。不好意思,我现在正在研究这个东西,对跨域的所有问题都很好奇……
    • 我明白了。 CORS 与技术本身无关。
    猜你喜欢
    • 2019-04-29
    • 2010-11-07
    • 2020-03-09
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多