Безпользовательская аутентификация Foursquare API «Отсутствуют учетные данные для доступа» - ошибка 400

Немного странный. Я создаю приложение React js, взаимодействующее с Foursquare API, в основном, чтобы узнать о React js и API.

Я использую Foursquare для получения информации о месте проведения, это нормально работает. Я также хочу использовать его для получения фотографий места проведения, где начинается самое интересное.

Метод, который обрабатывает исходный вызов мест, выглядит следующим образом. Я просто помещаю это здесь, чтобы обеспечить контроль, поскольку это работает нормально. Он без проблем возвращает информацию о месте проведения, которую я обрабатываю в приложении:

getVenues: (searchTerm) => {

    const urlToFetch = 

${urlExplore}${searchTerm}&limit=10&client_id=${clientId}&client_secret=${clientSecret}&v=20180602;

    return fetch(urlToFetch).then( response => {
         return response.json();
    }).then( jsonResponse => {
        if (jsonResponse.response.groups[0].items) {
            return jsonResponse.response.groups[0].items.map(item => (
                {
                    id: item.venue.id,
                    name: item.venue.name,
                    // blah
                }
            ));                

        } else {
            return [];
        }

    })

}

Пока все хорошо, работает нормально. Однако, когда я пытаюсь использовать тот же подход для доступа к конечной точке фотографий, метод возвращает серию объектов, содержащих мета, в которой говорится:

Код: 400 ErrorDetail: "Отсутствуют учетные данные для доступа. См. https://developer.foursquare.com/docs/api/configuration/authentication для подробности." ErrorType: "invalid_auth"

Достаточно сказать, что информация по предоставленной ссылке на самом деле не очень помогает :-(

Для получения информации о фотографии я использую следующий метод:

getVenuePhotos: (venueId) => {

    const fetchPhotosURL = `${urlPhotos}${venueId}/photos&limit=10&client_id=${clientId}&client_secret=${clientSecret}&v=20180602`;

    return fetch(fetchPhotosURL).then( response => {
         return response.json();
    }).then( jsonResponse => {
        console.info(jsonResponse);
        //blah - removed to save space - see method above, it's pretty much the same
    })

}

... оба хранятся в объекте в отдельном файле, который импортирует компонент реакции.

Переменные URL-адреса разрешаются следующим образом (звездочки - мое добавление):

fetchVenuesURL: https://api.foursquare.com/v2/venues/explore?near=london&limit=10&client_id=**** &client_secret=****&v=20180602

fetchPhotosURL: https://api.foursquare.com/v2/venues/4ac518eff964a52064ad20e3/photos&limit=10&client_id=**** &client_secret=****&v=20180602

Кто-нибудь знает, почему это может происходить?

заранее спасибо

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
632
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я думаю, в вашем URL-адресе есть опечатка.

Заменять

${urlPhotos}${venueId}/photos&limit=10&client...

с участием

${urlPhotos}${venueId}/photos?limit=10&client...

Я полностью упустил это. Сказать, что я чувствую себя немного глупо, было бы преуменьшением. Дох! Спасибо, что дали мне знать :-)

Stef 05.06.2018 10:41

Другие вопросы по теме