Как рассчитать время, прошедшее между двумя последовательными запросами? - PullRequest
0 голосов
/ 18 ноября 2010

Я хочу разработать сайт викторины с использованием MVC 2. На одной странице будет отображаться только один вопрос. Испытуемый выберет или напечатает ответ и нажмите кнопку Далее, чтобы продолжить.

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

Как лучше всего справиться с этим?

Ответы [ 3 ]

1 голос
/ 18 ноября 2010

Вы можете использовать состояние сеанса на сервере.Однако вам придется продумать, что произойдет, если пользователь откроет несколько вкладок / браузеров и т. Д.

Кроме того, вы можете отправить закодированные временные метки клиенту.Поскольку они закодированы, клиенты не смогут их изменять.

1 голос
/ 18 ноября 2010

Ну, я бы на самом деле не записал прошедшее время - я бы записал само время (в UTC).Вы можете очень легко перейти от этого ко времени между страницами, но вы не можете пойти другим путем.Вполне возможно, вам будет полезно иметь возможность изучить отдельные сеансы позже, отфильтровав их по времени (например, если кто-то утверждает, что у него возникла проблема в определенное время, вы можете проверить, действительно ли они были в системе).*

Все, что вам нужно, это какой-то идентификатор сеанса / пользователя, чтобы отслеживать сеанс пользователя, и вы можете просто записать текущее время.Время будет таким же защищенным, как системные часы сервера и сама база данных.

0 голосов
/ 18 ноября 2010

Запишите время и сохраните в сеансе. Таким образом, нет никакого способа для подделки данных клиента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...