当我从本地主机进行ajax调用到此网址(地理数据)http://ws.geonames.org/searchJSON时,我不会被相同的原始策略阻止。怎么会 ?我以为这是一个客户端双面锁。这是因为收到的数据是JSON吗?
答案 0 :(得分:1)
这要归功于Cross Origin Resource Sharing或CORS
。
在HTTP标头响应中,geonames.org正在设置Access-Control-Allow-Origin:*
。
允许任何来源,包括localhost或stackoverflow.com
要查看它的实际效果,请在Chrome中尝试使用此代码(右键单击>检查元素是弹出控制台的一种方法),然后检查请求标题的“网络”标签:
jQuery.ajax( {
url: 'http://ws.geonames.org/searchJSON'
, success: function(e){ console.log( "Success!", e ); }
, error: function(e){ console.log( "Error.", e ); }
);