Javascript Pretty Print Format дает неверный результат - PullRequest
1 голос
/ 19 июня 2020

function output(inp) {
      document.body.appendChild(document.createElement('pre')).innerHTML = inp;
  }


  function searchInGitRepo(str) {
    const http = new XMLHttpRequest();
    http.open("GET", "https://api.github.com/search/repositories?q=" + str);
    http.send();
    http.onload = () => {
      var result = http.responseText;
      var strformat = JSON.stringify(result, undefined, 4);
      output(strformat);
    }
  }

  var result = searchInGitRepo('ecommerce');

Я хочу получить данные из github репозиториев. Результат идеален, но данные не форматируются. Пожалуйста, взгляните на мой код. Он должен работать. Я следил за многими решениями. У меня ничего не работает!

function searchInGitRepo(str) {
    const http = new XMLHttpRequest();
    http.open("GET", "https://api.github.com/search/repositories?q=" + str);
    http.send();
    http.onload = () => {
      var result = http.responseText;
      var strformat = JSON.stringify(result, undefined, 4);
      output(strformat);
    }
}

Функция вывода:

function output(inp) {
      document.body.appendChild(document.createElement('pre')).innerHTML = inp;
}

1 Ответ

1 голос
/ 19 июня 2020

JSON.stringify() используется для преобразования объектов в строки. Обычно он используется при отправке данных на веб-сервер, потому что эти данные должны быть строкой.

В вашем случае данные result, которые вы получаете обратно с сервера, уже string, поэтому вам не нужно их "строчить".

Используйте output(result); вместо output(strformat);

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