Я пытаюсь запросить токен доступа у Google, могу ли я получить доступ к учетной записи Google Диска для загрузки файлов.
Я могу сделать запрос на авторизацию ...
<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.
My app does not involve any user interaction
Oauth2 требует взаимодействия с пользователем для аутентификации в учетной записи пользователя, тогда вам придется запрашивать у них доступ. Отображается экран согласия, и код возвращается в uri перенаправления.
да, пользователю нужно будет войти в систему, и вы сможете захватить токен обновления, который вы можете использовать для получения нового токена доступа и использования API
возвращаясь к основам отправки формы (без javascript), данные формы будут отправлены на uri, который вы установили в action
, и страница будет перенаправлена на то, что сервер установил, или страница будет "перезагружена" со страницей, которая показывает ответ сервера.
Я никогда не пробовал Google OAuth2, но, как правило, в этом случае, если отправка вашей формы прошла успешно, она будет перенаправлена на ваш redirect_uri
с токеном, добавленным в uri в качестве хеша.
только что понял, что вы используете тип предоставления кода. Таким образом, после отправки этой формы поток будет перенаправлен в Google IDM для аутентификации и подтверждения согласия, а затем перенаправлен на redirect_uri
с добавленным кодом аутентификации. затем вы можете получить токен, запросив его у конечной точки токена с полученным кодом.
Значит ли это, что конечный пользователь (чья учетная запись я хочу получить доступ) должен будет перейти на веб-страницу I, чтобы позволить им ввести свое имя пользователя и пароль. Затем я захватываю токен OAuth и с этого момента использую его?