Разработка серверного таймера / обратного отсчета для приложения викторины - PullRequest
1 голос
/ 04 мая 2020

Я создаю приложение для викторины с Ioni c React. Я хочу реализовать некоторую функцию таймера / обратного отсчета викторины, чтобы ограничить время, затрачиваемое на каждый вопрос. Уловка в том, что если я реализую функцию обратного отсчета на стороне клиента или во Front-end, я боюсь, что люди могут вмешаться в сценарий и обмануть, манипулируя таймером в своих интересах.

Поэтому я думаю, что Единственный способ предотвратить это - реализовать функцию сервера таймера / обратного отсчета. Тем не менее, я не знаю правильный способ go об этом ... Разве функция обратного отсчета не блокирует сервер? Или есть другой способ, которого я не знаю?

1 Ответ

1 голос
/ 04 мая 2020

Есть два способа справиться с этим:

http:

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

websocket :

Или вы можете реализовать веб-сокет для связи в реальном времени с бэкенд. В этом случае вы можете запустить таймер в бэкэнде и показать его прогресс в веб-интерфейсе в реальном времени. Backend будет вашим единственным источником правды.

Вы также можете проверить это сообщение .

...