Как получить JSON из JavaScript

0

Я пытаюсь написать мобильное приложение HTML5 и использовать jQuery для получения json с URL- адреса http://cin.ufpe.br/~rvcam/favours.json Я попытался использовать

var url='http://cin.ufpe.br/~rvcam/favours.json';
$.getJSON(url, function(data, status)
    {
        console.log(data);
        console.log(status);
    });

но на консоли ничего не отображается. Я не вижу, что я делаю неправильно.

[EDIT] Я узнал из другого сообщения, что обычно не могу получить информацию с другого сервера. Но этот сервер в частности (cin.ufpe.br/~rvcam) принадлежит мне. Могу ли я использовать PHP или какой-либо другой метод, чтобы мое приложение могло получать данные?

  • 0
    возможный дубликат проблемы синтаксиса $ .getJSON
  • 1
    Попробуйте добавить .fail() вызов .fail() и посмотрите, не .fail() ли он ошибку. Аргументы будут соответствовать параметру error $.ajax() - (xhr, status, error) .
Показать ещё 11 комментариев
Теги:

2 ответа

5
Лучший ответ

URL не возвращает действительный json. Он возвращает некоторый JavaScript, который пытается выполнить функцию под названием "foo" и передает объект в качестве аргумента. Это обычно называют "jsonp". Это метод достижения перекрестных доменных вызовов ajax

  • 0
    И как бы я использовал $ .getJSON для выполнения междоменных вызовов ajax?
  • 0
    api.jquery.com/jQuery.ajax Если вы посмотрите здесь раздел «jsonp» и «jsonpCallback», вы сможете понять, как определить foo и получить данные.
2

Ваш файл http://cin.ufpe.br/~rvcam/favours.json недействителен json. Действительный json завернут в foo(). Удалите foo() из этого файла, и он будет работать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню