Всем привет! Можно ли сделать таймер с защитой от ускорения? Обычный js таймер думаю нельзя сделать, но можно ли как-то проверить на стороне сервера, прошло ли действительно столько-то секунд?
Думал можно записать в сессию и потом когда пройдет 10 секунд отправить запрос на сервер и проверить. Но думаю такая проверка будет работать не очень точно, т.к. запрос может отправиться позже и в сессию запишется время, которое чуть позже чем в js таймере.
Есть ли другие варианты от ускорения?
Неплохо было бы цель узнать,а не проще создавать 2 таймера?
Один на js - чисто для юзера,который не будет влиять ровным счетом не на что,а второй на стороне сервера.
В моем представлении я вижу это как js таймер после его кончания появляется кнопка для взаимодействия - нажатие - проверка на сервере,что время соответствует окончанию таймера либо пускаем,либо ошибку выдаём.
На клиенте нельзя защитить ничего. Вообще, никак. Если нужно "надежное" время, то его можно организовать на сервере и только ему верить. То что присылает клиент проверять на то что оно не далеко в "будущем" или в "прошлом".
ajax запрос к серверу - у пользователя начался отсчет времени
ajax запрос к серверу за полезной информацией и тут сервер решает
если не прошло нужное кол-во секунд, то "куда торопимся?" , прошло - вот Вам плюшка.