Ошибка:: jQuery не был вызван
Вот мой вызов ajax.
$.ajax({
type: "GET",
url: "http://example.com/v1/search?keyword=r",
dataType: "jsonp",
crossDomain: true,
success: function (responseString) {
alert(responseString);
},
error: function (xhr, errorType, exception) {
var errorMessage = exception || xhr.statusText;
alert(errorMessage);
}
});
Ответ от моего примера url
{
"response": [{
"attributes": {
"type": "enge",
"url": "/services/data/v24.0/sobjects/Challenge__c/a0GZ0000005Vvh4MAC"
},
"name": "Really",
"end_date": "2013-02-07T15:26:00.000+0000",
"total": 350.0,
"registered_members": 0.0,
"id": "30",
"type": "Design",
"id": "a0GZ0000005Vvh4MAC",
"start_date": "2012-11-19T16:52:00.000+0000",
"description": "This is my really cool challenge",
"remaining_days": 28.0,
"categories__r": [{
"attributes": {
"type": "Category__c",
"url": "/services/data/Category__c/a08Z0000000RNI2IAO"
},
"id": "0RNI2IAO",
"display_name": "Andy"
}, {
"attributes": {
"type": "Category__c",
"url": "/services/Category__c/a08Z0000000RNI3IAO"
},
"id": "a0O",
"display_name": "ADR"
}]
}
}],
"count": 1
}
Я пытаюсь сделать перекрестный вызов домена и получить ошибку
jQuery180014405992737595236_1357861668479 was not called
Обновление
Ну, я попытался использовать dataType: "json", но в этот момент получить ошибку
No Transport
Ответы
Ответ 1
Это указывает на сетевую ошибку или конечную точку, которая не возвращает ответ JSONP.
(Я предполагаю, что сбой DNS-поиска я получаю при тестировании, потому что это не ваш реальный URL-адрес (пожалуйста, используйте example.com
, например, URL-адреса, то есть то, что там есть), если нет, то это ваша проблема).
Ответ 2
Это неправильный ответ JSONP. Серверу необходимо обработать аргумент callback=nameOfCallbackFunction
запроса GET
и выполнить его как оболочку функции.
Соответствующий ответ должен выглядеть следующим образом:
nameOfCallbackFunction({"yourjson": "here"});
Ответ 3
Я знаю, что это старый поток, но изо всех сил пытался получить пример ajax для перекрестного домена. Я много читал об использовании dataType: jsonp и support.cors = true, но получил 200-успешный, но parseerror.
Затем я прочитал в этой теме об использовании того или другого. Затем я изменил dataType: на json и оставил support.cors = true, и он сработал. В заключение.,.
Это может помочь кому-то, кто сталкивается с той же проблемой.
Ответ 4
Причина, по которой у вас возникла ошибка JQueryXXXX, заключается в том, что в URL-адресе, который вы вызываете, есть ошибка, вам нужно ввести "? callback =?", поэтому выглядит так:
"http://example.com/v1/search?callback=?keyword=r"
Также, если вы вызываете .php, помните:
header('Content-Type: application/json; charset=utf8');