Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript

Brian Prouty
seal-mask
.a{fill-rule:evenodd;}techdegree
Brian Prouty
Front End Web Development Techdegree Student 10,143 Points

XHR Failed...

I just started this project but the API request is failing... I think the API's may be old/ expired??

I am getting these errors: " GET https://api.open-notify.org/astros.json net::ERR_CONNECTION_REFUSED getJSON @ callbacks.js:16 (anonymous) @ callbacks.js:31

XHR failed loading: GET "https://api.open-notify.org/astros.json". getJSON @ callbacks.js:16 (anonymous) @ callbacks.js:31 "

Here is my code...

const astrosUrl = 'https://api.open-notify.org/astros.json';
const wikiUrl = 'https://en.wikipedia.org/api/rest_v1/page/summary/';
const peopleList = document.getElementById('people');
const btn = document.querySelector('button');

// Make an AJAX request
function getJSON(url) {
  const xhr = new XMLHttpRequest();
  xhr.open('GET', url);
  xhr.onload = () => {
    if(xhr.status === 200) {
      let data = JSON.parse(xhr.responseText);
      console.log(data);
    }
  };
  xhr.send();
}

// Generate the markup for each profile
function generateHTML(data) {
  const section = document.createElement('section');
  peopleList.appendChild(section);
  section.innerHTML = `
    <img src=${data.thumbnail.source}>
    <h2>${data.title}</h2>
    <p>${data.description}</p>
    <p>${data.extract}</p>
  `;
}

getJSON(astrosUrl);

2 Answers

The api uses http instead of https. You can test this by pasting the url directly in your browser.

Brian Prouty
seal-mask
.a{fill-rule:evenodd;}techdegree
Brian Prouty
Front End Web Development Techdegree Student 10,143 Points

I tried doing it both ways... The reason being another student was having problems with it and changed it to https and it worked for them.