Проверка на стороне клиента почтового запроса? - PullRequest
0 голосов
/ 20 марта 2011

У меня есть текстовое поле на странице, и когда пользователь нажимает «Отправить», я беру текстовое поле и отправляю его с помощью jQuery следующим образом:

$("#text_submit").submit(function(event)){
    user_text = $("input#user_text").val();
    $.post("/create/", { text : user_text }, function(data){
         //display response from server on the page;
    });
    event.preventDefault();
});

Затем на стороне сервера я проверю текст (это должен быть URL) и верну ответ.

Безопасно ли размещать на сервере все, что пользователь помещает в текстовое поле? Нужно ли выполнять проверку текста пользователя на стороне клиента?

Ответы [ 3 ]

2 голосов
/ 20 марта 2011

Я не согласен с приведенными выше постами, что на стороне сервера это двойная проверка или вторичная мера. Проверка на стороне сервера является единственной мерой. Проверка на стороне клиента может быть обойдена. Javascript может быть отключен.

Я считаю, что проверка на стороне клиента более полезна для пользователя. Это предотвращает необходимость POST для простых искаженных ошибок в данных и обеспечивает мгновенную обратную связь с пользователем об ошибках.

В целях безопасности проверка на стороне сервера - это все, на что вы можете положиться.

См. Также: JavaScript: проверка на стороне клиента и на стороне сервера

1 голос
/ 20 марта 2011

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

0 голосов
/ 20 марта 2011

Как общее практическое правило (по крайней мере, в отношении безопасности), вы не должны доверять ни одному пользователю, поэтому я думаю, что было бы разумным выбором проверить данные на стороне клиента (это также быстрее), а затем, если первая проверка прошла, проверьте его на стороне сервера, чтобы «перепроверить» (или иметь сеть безопасности, если у пользователя отключен Javascript, то, что вы часто не видите).

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