Как я могу использовать API?ничего не получая обратно в запросе AJAX (jQuery) - PullRequest
0 голосов
/ 19 сентября 2010

Я выясняю, как я могу использовать API Tumblr, но я думаю, что, возможно, я делаю это неправильно

Я пытался

$.get("http://jiewmeng.tumblr.com/api/read/json?callback=tumblr", function(data) {
    $("body").prepend(data);
});

и даже $ .ajax ()

$.ajax({
    type: 'get',
    contentType: 'json',
    url: 'http://jiewmeng.tumblr.com/api/read/json',
    success: function(data) {
        alert(data);
    }
});

и у меня ничего нет.но когда я захожу на url в браузере, я получаю что-то, что не так?

Ответы [ 3 ]

1 голос
/ 19 сентября 2010

Вы не должны давать имя функции обратного вызова, если вы используете анонимный обратный вызов. Оставьте наименование для jQuery, используя callback=?:

$.getJSON('http://jiewmeng.tumblr.com/api/read/json?callback=?', function(data) {
    alert(data);
});

Таким образом, фактический запрос будет выглядеть примерно так:

http://jiewmeng.tumblr.com/api/read/json?callback=jsonp1284885664340
0 голосов
/ 19 сентября 2010

Ajax работает только на том же хосте, что и страница, если вы хотите вызвать страницу (через ajax) на другом хосте, вы должны написать php proxy, прочитайте эту статью .

Вы также можете установить для dataType значение "jsonp", при этом запрос JSON будет получен не XHR, а с тегом script.

0 голосов
/ 19 сентября 2010

В вашем вызове get () отсутствует второй параметр (параметры вашего вызова). Итак, ваш звонок должен быть примерно таким:

$.get("http://jiewmeng.tumblr.com/api/read/json", {callback:'tumblr'}, function(data) {
  $("body").prepend(data);
});

Я проверял это, но здесь это не работает. Я предполагаю, что вызов http://jiewmeng.tumblr.com/api/read/json проверяет, является ли вызов запросом AJAX, и ничего не возвращает, если это так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...