@alexeilavrov

Как правильно сделать скрипт с ajax-запросами?

Пытаюсь сделать небольшой js-скрипт, который получает на входе id блока, перебирает в нем все ссылки, спрашивает через api в hypercomment сколько у этой страницы комментариев и, если комментариев больше 0, то добавляет блок с количеством комментариев.

Как правильно спланировать работу такого скрипта? У меня есть две идеи:
  1. Перебор вызывает функцию, которая возвращает кол-во комментов, а потом добавляется блок.
  2. В самой функции запроса кол-ва комментов прямо есть колл-бек функция, которая добавляет блок.


Пытался реализовать первый вариант, но не разобрался как вернуть из такой функции цифру (возвращается объект) и как пользоваться Promise.
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
muzikant777
@muzikant777
PHP/Vue разработчик
var getUrlSha = function(url) {
    return $.ajax({
      type: 'GET',
      url: 'sha1.php',
      data: {
        url: url
      }
    });
  };

  var getCommentsCount = function(url, sign) {
    return $.ajax({
      type: 'POST',
      url: 'https://c1api.hypercomments.com/1.0/streams/get',
      dataType: 'jsonp',
      cache: false,
      crossDomain: true,
      data: {
        body: '{"widget_id":11070,"link":"' + url + '"}',
        signature: sign
      }
    });
  };

  function getSumComments(url) {
    return getUrlSha(url).then(function(sign) {
      return getCommentsCount(url, sign);
    });
  }


  getSumComments('https://www.metrtv.ru/articles/second_estate/11617').then(function(count) {
    console.log(count);
  });

https://jsfiddle.net/oag3kkgt/3/
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы