Pobieranie kursu waluty JSON

0

Witam,
mam taki kod:

var link = "http://api.nbp.pl/api/exchangerates/rates/{table: A}/{code:USD}/format=json";
	var obiekt = JSON.parse(link);
	console.log(obiekt.mid);

, który ma pobierać kurs dolara z API NBP, ale pokazuje błąd:

SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

Takie o:

var link = "http://api.nbp.pl/api/exchangerates/rates/{A}/{USD}/format=json";
	var obiekt = JSON.parse(link);
	console.log(obiekt.mid);

też pokazuje ten błąd.

Jestem zielony w JSON, więc was pytam, jak zrobić, aby pokazywało mi aktualny kurs waluty?

0

Poczytaj to: https://kursjs.pl/kurs/ajax/fetch.php ;) Problem polega na tym, że parsujesz url, a nie dane otrzymane w odpowiedzi na wysłanie żądania na dany url.

1

A zwróciłeś może uwagę że jak wklesz swój link do przeglądarki, to zwróci:'

404 NotFound

Poprawny link:
http://api.nbp.pl/api/exchangerates/rates/A/USD/?format=json

zwróci:

{"table":"A","currency":"dolar amerykański","code":"USD","rates":[{"no":"161/A/NBP/2019","effectiveDate":"2019-08-21","mid":3.9210}]}
0
nobody01 napisał(a):

Poczytaj to: https://kursjs.pl/kurs/ajax/fetch.php ;) Problem polega na tym, że parsujesz url, a nie dane otrzymane w odpowiedzi na wysłanie żądania na dany url.

Przeczytałem i zmieniłem, ale teraz pokazuje undefined.
Kod:

fetch("http://api.nbp.pl/api/exchangerates/rates/A/USD/?format=json")
	.then(resp => resp.json())
   .then(resp => {
      console.log(resp.mid);
   })
1

Zrob console.log calego resp i zobacz, co tam siedzi :) Jesli jest tak, jak pisze Panczo, to sprobuj resp.rates[0].mid

1 użytkowników online, w tym zalogowanych: 0, gości: 1