@mspuz

Сервис по получению курсов валют — почему не работает?

Добрый вечер. Пытаюсь написать сервис для получения курсов валют. Использую следующий портал - https://currencylayer.com/.
Согласно мануалу получаю следующий код:
getCurrensy(): Observable<any> {
        const url = 'http://apilayer.net/api/live?access_key=<b>mykey</b>&currencies=EUR,RUB&source=USD&format=1'
        return this.http.jsonp(url, '')
            .pipe(
                map((response: Response) => response.json())
            )
    }


После, в модуле компонента пытаюсь вызвать данный сервис:

this.organizationService.getCurrensy().subscribe(
        curr => {
            console.log(curr)
      }
    )


и в консоли получаю:

Uncaught SyntaxError: Unexpected token :


В мануале на данном портале нашел описание для работы с JSONP, но не особо понял. Что я делаю не так? Спасибо.
  • Вопрос задан
  • 99 просмотров
Пригласить эксперта
Ответы на вопрос 2
Bigata
@Bigata
Web, PHP, JavaScript, HTML, Базы данных, Фриланс
А где Ваш accsess_key? Вам и пишет, что токен не годится
Ответ написан
Комментировать
@mspuz Автор вопроса
НЕ, это я просто заменил для форума свой key, поверьте он есть. В статистике моего личного кабинета отмечается, что запрос был. В "Инструменте разработчика" Google в закладке Network я получаю все необходимые данные, но в самом компоненте ошибка.

По моему я понял в чем дело. В моем проекте используется jwt-token для защиты моих "внутренних" роутев и видимо "внешний" запрос не прописан у меня и ругается на неизвестный токен. Может ли быть в этом дело?
Я использую в таком виде:
router.get('/', passport.authenticate('jwt', {session: false}), controller.getAll)

А как мне добавить защиту во внешний запрос?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы