Зачем нужно перенаправлять URI при запросе токена доступа OAuth от Google? - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь запросить токен доступа у Google, могу ли я получить доступ к учетной записи Google Drive, чтобы загружать файлы.

Я могу сделать запрос Auth ...

<form method="POST" action="https://accounts.google.com/o/oauth2/auth">
    <input type="hidden" name="scope" value="[YOUR SCOPE]"/>
    <input type="hidden" name="client_id" value="[YOUR CLIENT ID]"/>
    <input type="hidden" name="response_type" value="code"/>
    <input type="hidden" name="redirect_uri" value="[YOUR RETURN URL]"/>
    <input type="hidden" name="access_type" value="offline"/>
    <input type="submit"/>
</form>

Зачем мне нужен redirect_uri, если я делаю HTTP-запрос для получения токена доступа.Разве токен не будет возвращен в теле ответа?

Мое приложение не предполагает взаимодействия с пользователем, поэтому я не уверен, почему перенаправление даже необходимо.Я не хочу использовать SDK или библиотеку, скорее я бы хотел использовать HTTP через Postman.

Ответы [ 2 ]

0 голосов
/ 13 сентября 2018

Возвращаясь к основам отправки формы (без javascript), данные формы будут отправлены на uri, заданный вами в action, и страница будет перенаправлена ​​на сервер, на который она была установлена, или страница получит перезагрузку"со страницей, показывающей ответ сервера.

Я никогда не пробовал Google OAuth2, но в целом для этого случая, как правило, если отправка формы прошла успешно, она будет перенаправлена ​​на ваш redirect_uri с токеном.добавлен в URI как хеш.

только что понял, что вы используете тип предоставления кода.поэтому после отправки этой формы поток будет перенаправлен в Google IDM для аутентификации и подтверждения согласия, а затем перенаправлен на redirect_uri с добавленным кодом авторизации.тогда вы можете получить токен, запросив его у конечной точки токена с кодом, который вы получили.

0 голосов
/ 13 сентября 2018

Мое приложение не предполагает взаимодействия с пользователем

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...