Я делаю запрос междоменная от site1.com
к site2.com
(как поддерживается мной)междоменного с JSONP и JQuery
Это код JQuery на site1.com:
$.ajax({
type: 'POST',
url: 'http://site2.com/test/carrousel.cfm',
cache: false,
async: true,
crossDomain: true,
dataType: "jsonp",
success: function (data, status) {
alert(data);}
},
error: function (xhr, textStatus, errorThrown) {
alert('error');
}
});
я могу см. запрос, поступающий со статусом 200 в отладчике. Тело ответа также содержит строку, которую я отправляю с сервера. Эта строка: "okay"
Странно, обработчик ошибок всегда уволен, и я не могу получить доступ к данным. Я посылаю Access-Control-Allow-Headers
и Access-Control-Allow-Origin
заголовки через сервер тоже (я наткнулся на несколько постов с просьбой сделать это)
Я также получаю ошибку сценария говоря: «ХОРОШО» не определено. «OKAY» - это строка, которую я получаю в ответ от сервера. Как это происходит? И как я могу получить этот запрос перекрестного домена для успеха?
Я использую JQuery 1.10.2 & IE 10
Как вы можете видеть, я также использую JSONP & правильные параметры, определенные в документации JQuery для выполнения междоменное запросов
вы говорите, что ответ имеет тип 'jsonp', но ваш ответ представляет собой строку' okay', которая является недопустимой, ответ 'jsonp' должен иметь формат' somemethod (data) '. Поскольку ваш сервер отправляет заголовки «Access-Control-Allow-Origin' ... меняет тип данных на« текст »и пытается –
* Тело ответа также содержит строку, которую я отправляю с сервера. Эта строка: «okay» * «okay» 'недействительна jsonp. кросс-доменные заголовки не нужны для запросов jsonp. –
@ArunPJohny: установка типа текста по-прежнему вызывает ошибку. – PoeHaH