Я пытаюсь получить запрос JSONP AJAX, но у меня проблемы с выяснением, почему он не работает. Прямо сейчас у меня есть этот звонок
$.getJSON(server_path+"formproxy.php?"+$(form).serialize()+"&action="+form.action+"&callback=?", function(data, status, xhr) {
alert(data);
});
но когда я запускаю скрипт, кажется, ничего не происходит. Лучшее, что я могу понять, это то, что запрос jsonp работает с ошибкой, но поскольку это запрос jsonp, он фактически не сообщает об ошибке, что сильно мешает моей отладке.
Я играл с
$.ajaxSetup({
"error":function() {
alert("error");
}
});
и
$(document).ajaxError(function(e, xhr, settings, exception) {
alert('failed');
});
но я не могу заставить их сработать.
Я вывел целевой URL на консоль, а именно
server_path+"formproxy.php?"+$(form).serialize()+"&action="+form.action+"&callback=?"
Я могу зайти на выведенный URL и увидеть, что он работает и выдает ?({"result":"success"})
, что мне кажется правильным.
Глядя на консоль в Chrome, она даже не показывает XHR, но я по крайней мере уверен, что код $ .getJSON () достигается благодаря точкам останова.
Наконец, я должен заметить, что меня даже не волнует возвращение данных из вызова AJAX. Мне просто нужно отправить данные формы через домен и позволить сценарию formproxy.php обработать его.
Буду очень признателен за любые мысли о том, почему это может не сработать, или за технику, которая поможет мне увидеть, что происходит внутри.