Как передать анти-поддельное состояние на кнопку входа в систему Google или javascript?

Я следую этому руководству, чтобы создать кнопку входа.

https://developers.google.com/+/web/signin/server-side-flow

Но я не вижу, как состояние анти-подделки передается фрагменту кнопки (шаг 4).

Должен ли быть параметр, например, состояние данных для кнопки?

В целом учебнике не упоминается, как код состояния передается со страницы на сервер google и обратно в мою функцию signInCallback.

<div id="signinButton"> <span class="g-signin" data-scope="https://www.googleapis.com/auth/plus.login" data-clientid="YOUR_CLIENT_ID" data-redirecturi="postmessage" data-accesstype="offline" data-cookiepolicy="single_host_origin" data-callback="signInCallback"> </span> </div> 

Затем на шаге 6 я не вижу, как состояние передается на вызов сервера ajax. Итак, как это условие if-condition работает на шаге 7?

if request.args.get ('state', '')! = session ['state']:

Спасибо за любую помощь заранее.

Немного пошутившись, я обнаружил, что для кнопки есть недокументированный параметр, состояние данных. Как только я его установил, я мог бы вернуться к моей функции обратного вызова.

 <div id="signinButton"> <span class="g-signin" data-scope="https://www.googleapis.com/auth/plus.login" data-clientid="YOUR_CLIENT_ID" data-state="MY_STATE" <!-- The state is sent to Google and back to my callback --> data-redirecturi="postmessage" data-accesstype="offline" data-cookiepolicy="single_host_origin" data-callback="signInCallback"> </span> </div> 

Состояние заканчивается значением, сохраненным в переменной сеанса. Сеансы обычно представляются как сеансовые файлы cookie, которые являются случайными. Куки-файл сеанса автоматически отправляется вместе с запросом ajax, поэтому нет ничего конкретного, что вам нужно сделать. Я не уверен, что PHP ставит код состояния в файл cookie напрямую или использует cookie сеанса для отслеживания сеанса, но в любом случае он должен быть одинаково эффективным. Весь смысл кода анти-подделки заключается в том, чтобы убедиться, что кто-то не может совершить слепое нападение на ваш сервер.

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