为什么*如果*您无意将响应评估为脚本,为什么会阻止跨域AJAX?

| 假设我想使用AJAX从不受信任的其他域中检索json文件。 然后,我将响应解析为javascript对象,而不进行任何脚本评估。 (未随我的请求发送Cookie。) 我不明白为什么浏览器阻止我执行此操作。 我知道,如果我将响应评估为脚本,那将是一个安全问题。 我了解,有一些解决方法可以实现上述目标。 是否有理由应避免我的特定情况,或者是否只是偶然地将其卡入了相同来源的Dragnet中? 谢谢。 (假设服务器不支持CORS)     
已邀请:
  ...您无意将响应评估为脚本? 首先,浏览器的安全性无法确定您打算做什么。 其次,设计相同的来源/来源限制也可以防止其他情况发生:看到 http://blogs.msdn.com/b/ieinternals/archive/2009/08/28/explaining-same-origin-policy-part-1-deny-read.aspx     
可以使用跨域AJAX,但是远程服务器需要支持CORS,并且可能存在某些标头限制。 JSONP对于大多数应用程序不是必需的。如果远程服务器不支持CORS,那么您将被困于同源垃圾,并且必须使用JSONP。 注意: 较旧的浏览器不支持CORS。您可能想要使用jQuery或类似的框架(我在使用Mootools和跨域AJAX时遇到了麻烦,因为我无法弄清楚如何删除一些默认标头。我的设置。     

要回复问题请先登录注册