Авторизация не удалась при получении запроса на API-интерфейс Brawl Stars - PullRequest
0 голосов
/ 14 апреля 2020

Я пытаюсь отправить запрос на получение с API выборки, чтобы запросить сервер API звезд драки. Я создал API-ключ, связанный с моим IP-адресом. Я перепробовал все, но я получил ответ 403 с сервера.

Вот мой код:

const url = 'https://api.brawlstars.com/v1/players/...';
const token = '...';

const headers = new Headers({
    'Accept': 'application/json',
    'Authorization': 'Bearer ' + token
});

const options = {
    method: 'GET',
    headers: headers,
    mode: 'cors',
    cache: 'default'
};

fetch(url, options)
    .then(response => response.json())
    .then(console.log)
    .catch(console.error);

В консоли появляется сообщение: No 'Access-Control-Allow-Origin' header is present on the requested resource из-за политики cors.

Когда я проверяю запрос на бессонницу, он работает хорошо!

1 Ответ

0 голосов
/ 19 апреля 2020

У меня была проблема с API Brawlstars некоторое время назад, когда я делал команду Brawlstars для своего бота Discord. Однако я смог заставить работать API со следующим кодом.

        const playerurl = 'https://api.brawlstars.com/v1/players/';

        const getJSON = async url => {
            try {
                const response = await fetch(url, {
                    method: 'GET',
                    headers: {
                        Accept: 'application/json',
                        Authorization: 'Bearer <yourapitoken>',
                    },
                });
                if(!response.ok) {throw new Error(response.statusText);}
                const data = await response.json();
                return data;
            }
            catch(error) {
                return error;
            }
        };

        getJSON(playerurl).then(data => {
            console.log(data);
        }).catch(error => {
            console.error(error);
        });

Я надеюсь, что это работает для вас!

...