Nordihan
@Nordihan
JAVASCRIPTIZER (REACT / NODE.JS)

Как получить курс валют с сайта ЦБ РФ через браузер?

Следующий код не работает, приходит пустой ответ:
fetch('https://cbr.ru/scripts/XML_daily.asp', {
            mode: 'no-cors',
        })
            .then(response => response.text())
            .then(data => {
                console.log(`data`, data)
})


URL: www.cbr.ru/scripts/XML_daily.asp
Doc: https://cbr.ru/development/SXML/

ЧЯДНТ?
  • Вопрос задан
  • 91 просмотр
Решения вопроса 3
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
no-cors — Разрешает использование только HEAD, GET или POST методов и простых заголовков (т.е. разрешены только простые запросы). Если какой-либо ServiceWorkers перехватит запрос, то он не сможет добавить или изменить заголовки, кроме простых. Также, для JavaScript может быть ограничен доступ к любому свойству объекта ответа Response. Это позволяет наверняка знать, что ServiceWorkers не изменили семантику и предотвратить проблемы безопасности и конфиденциальности, возникающие при утечке данных между доменами.

https://developer.mozilla.org/ru/docs/Web/API/Requ...
Ответ написан
TNPTSYWWCC
@TNPTSYWWCC
And I Told Them I Invented Times New Roman
Убери mode: 'no-cors', это не так работает. Этот параметр не решит проблемы с CORS, в твоём случае, он тебе просто ошибку скрывает.

ЧЯДНТ?
Боюсь придётся найти другое API для этого или написать прослойку на бекенде.
Ответ написан
werty1001
@werty1001
undefined
function CBR_XML_Daily_Ru(rates) {
  console.log(rates);
}

<script src="//www.cbr-xml-daily.ru/daily_jsonp.js" async></script>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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