параметр "состояние" должен быть установлен в строке запроса в результате, что я должен делать дальше - PullRequest
2 голосов
/ 02 октября 2019

Я установил соединение с умным домом в Google Action. Веб-приложение для Google Home связано и авторизовано.

Я выполнил действие Google "Умный дом". там нужно было государство. Что такое состояние?

приведенная ниже строка является примером для авторизации, но я не знаю о строке состояния

, откуда я добавляю строку состояния и какова ее цель?

GET https://myservice.example.com/auth?client_id=GOOGLE_CLIENT_ID&redirect_uri=REDIRECT_URI&state=STATE_STRING&response_type=token

1 Ответ

1 голос
/ 02 октября 2019

Вы должны получить state из параметров, которые Google отправляет вашей конечной точке аутентификации в параметрах URL.

Если вы используете неявный поток, это следующие параметры:

  • client_id - идентификатор клиента, который вы присвоили Google.
  • redirect_uri -URL-адрес, на который вы отправляете ответ на этот запрос.
  • state - бухгалтерское значение, которое передается обратно в Google без изменений в URI перенаправления.
  • response_type - типзначение для возврата в ответе. Для неявного потока OAuth 2.0 тип ответа всегда "токен".

Если вы используете поток кода авторизации, вы получите аналогичные параметры, но значение response_type будетбыть "кодом".

Вы должны отправить точно то же значение, которое вы получите для state обратно в качестве параметра state в URL, который вы перенаправляете. Это часть безопасности OAuth, используемая для предотвращения атак повторного воспроизведения и для клиента OAuth, чтобы определить, на какой запрос отвечает.

...