Quantcast
Channel: Recent Questions - Stack Overflow
Viewing all articles
Browse latest Browse all 12111

Set a variable from a json file and get a second API json

$
0
0

I'm a total newb when it comes to javascript and json. As it will soon show. I had some experience with javascript back 12 or so years ago. But it was minimal. So, go easy on me.

It's difficult to explain exactly what the issue is that I am having. So, I'll make an example here. I have an API url that I need to get another API URL from and then use that json file to create my html page. I can fetch the first json file just fine at, lets say, http://www.thiscarsite.com/API/thecars And it's set up similar to the following example.

{ "manufacturer": "Cheverolet","model": "Camaro","year": "1990","styles": {"top": "convertible","engine"; "v8","address": "http://www.somesite.com/api/90ChevCamConvV8"        }}

As I said, I can get the first json information just fine with fetch/await. Or something as simple as this.

const startUrl = 'http://www.thiscarsite.com/API/thecars';fetch(startUrl)  .then(response => {    return response.json();    console.log(data);  })  .catch(error => {    console.error(error);  });

I have seen examples where one gets the URL by const newURL = data.styles.address; But how do I go about getting the address from the example above AND requesting the 2nd json file? I failed to mention that the URL in the first json file can change 3 or 4 times per week. Thus, the need to get it from the first one every time I need to access it.

I know this information is probably easy to find. I'm just not smart enough on the subject to be able to use the proper search terms.

I appreciate anyone taking the time to point me in the right direction.

WHAT I TRIED, With No luck

Tried something like this, my edits to insert the 2nd URL resulted in a failure

fetch('https://example.com/endpoint1')  .then(response => {    return response.json();  })  .then(data1 => {    return fetch(`https://example.com/endpoint2?data=${data1}`);  })  .then(response => {    return response.json();  })  .then(data2 => {    console.log(data2);  })  .catch(error => {    console.error(error);  });

Also, tried using 2 async functions but kept getting errors like "response already called" (or something to the effect)


Viewing all articles
Browse latest Browse all 12111

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>