Действие 'Post запрос' не возвращает результат через изменение переменных, чтобы получить ответ, вам нужно вызвать действие 'Текущий Url', 'Содержание ответа', 'Статус ответа' или 'Получить заголовок' после выполнения запроса.
alt text
1685631199 - Unix Time Stamp
X-Goog-Api-Key - как правило , статичный заголовок
Только что посмотрел их код в гмейле как этот заголовок создается. Ты говорил про хеш, который зависит от куки, урл и времени. Однако в гмейле там немного по-другому, по крайней мере это то что я вижу из кода. Там два заголовка, это так. Правда тот который имеет вид SAPISIDHASH $time_$hash не генерится под каждый новый запрос, а вычисляется один раз на страницу, по крайней мере у меня так в браузере, но это не суть.
@High-Level , в моем случае, я работаю с временем через $time_msec = intval(microtime(true) * 1000. По поводу Unix Time Stamp похоже на правильный вариант, проверю. Одного не понимаю, в этом случае, что до нижнего подчеркивания, что после, происходит вычисление времени. Как то дико
@kavo Вот именно у меня APISIDHASH $time_$hash меняется для каждого запроса. Сейчас опять перепроверил:
Authorization: SAPISIDHASH 1685681773_7b45633dcb71cbd15849d56ff5ad10dcdbd3fc1b
Authorization: SAPISIDHASH 1685681774_2a91e055fa4c01a80e9ed39cd65068c6ba9a9314
Как видишь разница что в $time, что в $hash имеется, и это идущие друг за другом post-запросы. А вот в хэше из 40 символов да, так и есть, он меняется раз в сессию.
И выше писали, что заголовок X-Goog-Api-Key статичный. Это тоже не так. В каждом запросе он так же разный:
X-Goog-Api-Key: AIzaSyABqJ85_R2irnKzMtGBL0iHuyFBi6Efk1w
X-Goog-Api-Key: AIzaSyA7gAruVC1V-GYDhbDF3Szc2YgUTo1-YHM
По поводу заголовка SAPISIDHASH $hash мне вообще нужно их хеширования время убрать? В итоге, если я все правильно понимаю, то мне нужно из хеширования SAPISIDHASH $hash убрать время, а в $time_$has как раз его добавить. В итоге до нижнего подчеркивания будут хешированные данные времени, а после него хеш sapisid_cookie и URL. Все верно?
Ну тебе нужно поэтому было в посте писать на каком ты ресурсе делаешь это, и ты в чем там смотришь? В хроме в панельке Network?.
Но то что у тебя для каждого запроса оно меняется - ну и че, генерируй так же для каждого запроса.
Время должно быть в секундах, а не миллисекундах только

На картинке хорошо видно че происходит.
Насчет X-Goog-Api-Key, ты если бы сервис сказал, я бы его нашел. В гмейле есть X-Goog-Auth-User, и он тоже зависит от какой-то ветки. Если она есть - то там будет значение, если нет - то будет 0.
@kavo said in Помогите с проблемой генерации хэша Authorization: SAPISIDHASH:
Время должно быть в секундах, а не миллисекундах только
Ок, принял, поменяю.
"если бы сервис сказал" - Вот он
@High-Level и @kavo спасибо за подсказки. Вроде справился с Authorization: SAPISIDHASH
В итоге у меня получается, что Authorization: SAPISIDHASH 5af9ca3bc0ca2fc23021551098dc613235a58742 хэшируется (sha1) из значений $sapisid_cookie и $URL, и оно меняется только при изменений этих данных(параметр $time в него не включен ), а второе Authorization: SAPISIDHASH 1685699777_38dc2bf80f96b8045f3992667f19ecaa894ad53b состоит из $time_$auth_hash, где $auth_hash, это хэш из $time,$sapisid_cookie и $URL. Параметр $time в хеше и в значении до нижнего подчеркивания один и тот же. Соответсвенно, итоговый Authorization: SAPISIDHASH меняется каждый раз в связи с изменением времени. Реализовал получение этих обоих параметров в один код. В результате Authorization: SAPISIDHASH 5af9ca3bc0ca2fc23021551098dc613235a58742 отрабатывается на отлично. SAPISIDHASH 1685699777_38dc2bf80f96b8045f3992667f19ecaa894ad53b еще не проверял, так как с ним в запросе всегда находится X-Goog-Api-Key, который еще не раскурил. Вроде как все ок!
Единственное, @kavo, посмотри пожалуйста на досуге, про заголовок X-Goog-Api-Key. Линк на сервис выше скинул. Еще раз всем спасибо!
Он статичный на все запросы, каким образом он у тебя может меняться?

Вот он прям в скрипте здесь задан

Если просто ПКМ по этому скрипту, скопировать линк и вставить в браузере, то там будет именно этот апи ключ.
Другое дело, что скрипт не всегда один и тот же, но у меня что в своем гугл хроме, что в антике с другим акком + прокси, эти api key одинаковые.
Скорей всего дело в том, что ты не сможешь повторить с обычным аккаунтом gmail все действия, которые у меня осуществляются на аккаунте WS(work space). На обычном аккаунте это выполнить нельзя. Но реально, значение X-Goog-Api-Key, меняется от одного post-запроса к другому в рамках одной сессии. Да даже не сессии, в рамках пару секунд. Но опять же почему то не всегда, но в 90% случаев это именно так. Тем не менее, X-Goog-Api-Key ты же нашел, и я не думаю, что он будет менять место. Как его лучше выцарапать?
Хз как будет он в твоем случае собираться, но вообще он находится если девтулсе во вкладке Network нажать Ctrl+F и вбить значение из запроса. В результатах поиска будет скрипт где прям в сорсе этот ключ находится.
У тебя такое ощущение что каждый раз страница загружается по новой перед следующим твоим пост запросом. Это бы объясняло почему каждый раз время меняется в Auth хедере, да и апи ключ. Либо там вообще в work space скрипты другие, но в обычном акке и апи ключ, и auth header высчитывается только один раз при загрузке страницы
@kavo said in Помогите с проблемой генерации хэша Authorization: SAPISIDHASH:
У тебя такое ощущение что каждый раз страница загружается по новой перед следующим твоим пост запросом
Нет, но там все работает в iFrame. Может это как то влияет?