GitHub OAuth App - получение токена

У меня есть простое веб-приложение, которое я тестирую на локальном хосте (с использованием http-сервера), в котором я пытаюсь авторизовать его в соответствии с руководством по GitHub.

Мне удалось перенаправить на страницу GitHub, чтобы пользователь мог войти туда и получить временный код, возвращаемый из GitHub в качестве параметра запроса.

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

Код, который я использую для этого:

const getGitHubToken = async code => {
    return await fetch(authData.accessTokenURL, {
        method: 'POST',
        body: {
            client_id: authData.client_id,
            client_secret: authData.client_secret,
            code
        },
        headers: {
            'Accept': 'application/json',
            'Content-Type': 'application/json'
        }
    });
};

Итак, мои вопросы:

  • почему не работает
  • безопасно ли хранить client_id и client_secret на стороне клиента
  • какие-либо предложения, если это хорошая идея применить этот подход, когда моя цель - создать приложение, способное запрашивать GitHub API (общая статистика, публичные репозитории), как я могу сделать это лучше?

0 ответов

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