2017-02-06 10 views
-1

Итак, это то, что я хотел бы сделать на своем веб-сайте:Как запретить пользователю веб-сайта просматривать определенную информацию до тех пор, пока не будет выполнено определенное условие.

На сайте будет создано случайное число от 1 до 10 000.

Затем пользователь веб-сайта угадывает число, которое генерирует веб-сайт, введя их догадки в текстовое поле.

Если пользователь получил номер неправильно, генерируется новый номер, и пользователь должен снова угадать.

Если пользователь получил номер справа, отображается код.

Проблема заключается в том, что если пользователь просто проверяет java-скрипт, он сможет увидеть код в скрипте. Как я могу запретить пользователю веб-сайта манипулировать кодом javascript, чтобы узнать, какой номер он создал? также, как я могу запретить пользователю получать доступ к коду, просматривая javascript? Нужно ли мне использовать php или что-то еще?

Спасибо, что нашли время, чтобы прочитать мой вопрос.

+0

Хранить все, что вы не хотите видеть на своем компьютере – charlietfl

ответ

1

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

function guess(number){ 
    var rand=Math.random()*10000; 
    if(number==rand){ 
     //success 
    }else{ 
     //failure 
    } 
} 

Таким образом, число показывается до тех пор, пока они не догадаются, и вы не можете это проверить.

Также размышление вне рамки: на основании условий число из предположения не имеет значения. Если число меняется каждый раз, каждый раз он имеет шанс 1/100 000, чтобы правильно догадаться. Вам просто нужно написать функцию, которая будет успешной только раз в десять тысяч раз. Однако, если они смотрят на источник, они могут чувствовать себя преданными этим.

+0

Спасибо, но я догадываюсь, что я пытался сделать так, чтобы пользователь мог изменить код, если захочет. Они могут изменить случайное число, сгенерированное в диапазоне от 1 до 2 вместо 1 и 10000. Есть ли способ обойти это? – tarfool4

+0

Отладчик может назначить новое значение 'rand' после первоначального объявления. – GantTheWanderer

+0

Я понимаю, что вы говорите. Да нет абсолютно никакого пути, и вы должны использовать php. Это точно такая же логика кода, хотя и отличается от другого синтаксиса. После того, как вы это сделали, не забудьте, что они могут спамить ваш php-файл миллион раз, чтобы перенаправить свой путь к правильному ответу, поэтому вам также нужно добавить блок. Я предполагаю, что приз за угадывание числа - это что-то важное. – CodeCabin

0

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

Именно поэтому серверная сторона должна нести ответственность за эти проверки и проверку. Если клиент должен был отправить номер на ваш сервер, ответ может быть сгенерирован на стороне сервера, где это было бы безопасно от любых вмешательств.

+0

Спасибо, что прояснилось много моих забот. Будет ли реализация чего-то подобного в php значительно сложнее, чем реализовать в java-скрипте? – tarfool4

+0

Будет немного сложнее, если вы не знакомы с PHP, но все основы одинаковы. В основном вам просто нужно знать, как вытаскивать параметры из строки запроса, как произвольно генерировать число и как получить ответ назад на странице (JSON, Html?) – GantTheWanderer