2012-10-02 64 views
0

好吧我只是做了一个测试,事实证明,这不会被浏览器阻止 - 我认为这是因为它可以加载jquery并且仍然可以访问数据负载:如何防止跨站点访问

我已经找到了一个脚本在这里: https://securedomain.com/cookie_test.php - 它打印出的饼干作为JSON

如果我运行此文件在这里: http://myotherdomain.com/cookie_test.php

与此内容的JavaScript加载:

,但它不与一个AJAX请求加载,因为同源策略的

它也像要想在脚本标签工作,它必须是一个有效的js语句,如: 数据= { secure_data:真正}

,但如果我做的只是简单的JSON,然后它会导致一个JavaScript错误: {secure_data:真正}

所以我在假设该文件中的数据输出的安全纠正,只要我以json格式输出JUST json?它不能被客户端浏览器上的任何其他站点检索到?

回答

0

应该是,但如果你担心,你总是可以在json周围添加注释,将其作为文本加载到浏览器中,在javascript中恢复注释,然后执行JSON.parse。

以这种方式提供所有cookies从安全域看起来是个坏主意,因为它会杀死像HttpOnly cookies这样的明智的东西。