Вы не добавляете заголовок Access-Control-Allow-Origin
- они делают.
Это "Заголовок ответа" , поэтому сопровождающие gumball.wickedlysmart.com
должны добавить его в свой ответ.
Хотя я очень сомневаюсь, что их убедят добавить IP-адрес только для локальной сети - 192.168.x.x
.
Однако служба поддерживает JSONP, поэтому заголовок не должен быть обязательным. Это потому, что JSONP не Ajax и не использует XMLHttpRequest
.
Вместо этого запросы JSONP выполняются путем добавления в документ новых <script>
источников:
function requestJSONP(url) {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
document.body.appendChild(script);
}
Также обратите внимание, что ?
из callback=?
- это просто помощь, предлагаемая некоторыми библиотеками (например, jQuery ). Вы должны указать фактическое глобальное имя функции в качестве значения callback
, чтобы фактически получить ответ:
window.processResponse = function (data) {
// ...
};
requestJSONP('http://gumball.wickedlysmart.com/?callback=processResponse');
Пример: http://jsfiddle.net/mnjxB/1/