Доброго всем времени суток. Озадачился вопросом написать бота для игры (по большей части, потому что есть свободное время, хочу чем-то заняться)
Скачал Fiddler, отслеживаю запросы. Авторизоваться, получить информацию профиля я смог, хоть и не без мучений, всё-таки подобный опыт у меня первый.
Остановился на такой проблеме. Сделать какое-то действие.
Код запроса, который я словил:
Запрос
POST
https://pvppru2s00.plrm.zone/GeoPortalRus2/Segment... HTTP/1.1
Host: pvppru2s00.plrm.zone
Connection: keep-alive
Content-Length: 339
sign-code: 83c580cfdeed86942844d42829808fdf5cbb701c4f8f772579e6454aae018ea9
Origin:
https://cdn01.x-plarium.com
signin-session:
signin-userId:
server-method: Buy
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36
client-ver: 628
signin-authSeed:
X-Requested-With: ShockwaveFlash/23.0.0.162
signin-authKey:
locale-name: ru-RU
Content-Type: text/html
client-type: 1
Accept: */*
Referer:
https://cdn01.x-plarium.com/geo/new_client/prod/pp...
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
{"km":19,"sm":[],"y":null,"t":1605869739556,"o":{"s":0,"n":false,"g":false,"o":{"tci":null,"i":8,"bi":{},"t":102,"d":null,"gi":{"m":false,"x":45,"s":0,"y":13,"z":0},"c":{"s":null,"d":false,"f":null,"l":1},"ti":null}},"u":1605869552930,"sb":0,"q":[79,33,68,70,71,72,73,74,75,76,45,46,47,48,81,50,77,20,53,54,55,80,30,78],"g":186626,"r":468}
Если при авторизации sign-code у меня не меняется(по крайней мере 2 дня), то другие запросы идут со своим кодом (оно и понятно, но подделать как-то же можно же, потому что бот для этой игры существует где-то лет 5)
Где взять остальные параметры, которые в HEADERS я знаю, удалил, на всякий случай.
Есть вопрос по sign-code, откуда он получается. Это шифрование для HTTPS или всё проще? Как сделать свой?
И второй вопрос по странному timestamp. "u":1605869552930 -> это время входа, как получить знаю. Но меня очень сильно смущает, что он на 3 цифры больше реального. Причем, если эти цифры отрезать, то при переводе получается вполне нормальное время. Очень странно для меня, надеюсь, что кто-то с этим сталкивался.
В общем, я понимаю, что надо собрать в одну кучу одинаковые запросы и смотреть, что в них меняется, благодаря этому я научился вытаскивать много информации из ответа, который приходит после авторизации, но в остальной информации начались проблемы. Например "g":186626, оно меняется очень странно, но вроде не похоже на рандом.
В общем, что делать, как быть?)
UPD: node.js указал, так как планирую на нем писать бота