<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$.getJSON('http://localhost:8080/privateTraining/getTrainingsJson?callback=?',
function(data) {
console.log("success");
alert(data);
});
});
здесь ответ получается, но функция успеха никогда не запускается
Здесь getJson - это удаленный серверный вызов.
, когда я проверяю с firbug, достоверных данных JSON ответ дает (данные JSON проверяются с http://jsonlint.com/ и его дает результат, как Действительный формат JSON)
Даже пробовал:
$.ajax({
dataType: "jsonp", //set this to json
url: "http://localhost:8080/privateTraining/getTrainingsJson",
success: function(data)
{
var myObj = data;
console.log(myObj); //to see the object
}
});
но дает такой же результат .. функция успеха не выполняется
JSON недействителен JSONP. Поэтому, если вы скажете jQuery ожидать JSONP (оба из которых: 'callback =?' В URL-адресе и 'dataType:" jsonp "будут делать), тогда ответ будет оценен неправильно, и обратный вызов успеха не будет вызван. Итак, что возвращает сервер, это JSONP или JSON? Если это JSON, удалите 'callback =?' И установите 'dataType' в' 'json''. Теперь, если вы делаете кросс-доменный запрос (т. Е. 'Http: // localhost: 8080 /' не обслуживает страницу, с которой сделан запрос), вам придется использовать JSONP, и в этом случае вам нужно настроить ваш сервер будет возвращать JSONP (вместо этого вы можете включить CORS). –
Поскольку мы не знаем, что сервер действительно возвращает и что такое настройка сети, угадывание - это лучшее, что мы можем сделать. –
@FelixKling: сервер возвращает данные json – monda