Wenn ich einen AJAX-Anruf von meinem localhost zu dieser URL (Geodaten) http://ws.geonames.org/searchJSON mache, werde ich nicht durch die gleiche Ursprungsrichtlinie blockiert. Woher ? Ich dachte, das wäre eine clientseitige Sperre. Liegt das daran, dass die empfangenen Daten JSON sind?Gleiche Domain Policy Ausnahmen?
1
A
Antwort
1
Dies ist dank oder CORS
.
In der HTTP-Header-Antwort setzt geonames.org Access-Control-Allow-Origin:*
.
, dass jeder Herkunft inspizieren können, einschließlich localhost oder stackoverflow.com
Um zu sehen, sie in Aktion, versuchen Sie diesen Code aus in Chrome (rechte Maustaste> Inspect Element ist ein Weg, um die Konsole Pop) und dann die Registerkarte "Netzwerk" für die Anforderungsheader:
jQuery.ajax({
url: 'http://ws.geonames.org/searchJSON'
, success: function(e){ console.log("Success!", e); }
, error: function(e){ console.log("Error.", e); }
);