Jquery post请求的客户端验证?

Jquery post请求的客户端验证?,jquery,validation,post,Jquery,Validation,Post,我在页面上有一个文本框,当用户单击“提交”时,我抓取文本字段并用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;

我在页面上有一个文本框,当用户单击“提交”时,我抓取文本字段并用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)并返回响应


将用户在文本框中输入的内容发布到服务器是否安全?我是否需要对用户的文本进行客户端验证?

这取决于内容和验证方式。如果javascript被关闭,我总是首先在客户端验证,然后在服务器上验证,这是第二个衡量标准。

这取决于内容的内容和验证方式。如果关闭javascript,我总是首先在客户端验证,然后在服务器上验证,作为第二个衡量标准。

作为一般经验法则(至少在安全性方面),您不应该信任任何用户,因此我认为在客户端验证数据(速度更快)是明智的选择,然后,如果第一次验证通过,在服务器端验证它,进行“双重检查”(或者如果用户关闭了Javascript,则设置一个安全网,这是您不常看到的)。

作为一般经验法则(至少在安全方面),您不应该信任任何用户,因此我认为在客户端验证数据(速度更快)是明智的选择,然后,如果第一次验证通过,请在服务器端进行验证,以“双重检查”(或者在用户关闭Javascript时设置安全网,这是您不常看到的)。

我不同意上面的帖子,即服务器端是双重检查或次要措施。服务器端验证是唯一的措施。可以绕过客户端验证。可以禁用Javascript

我认为客户端验证对用户更有帮助。它可以避免发布简单的错误数据,并为用户提供错误的即时反馈

不过,为了安全起见,您只能依靠服务器端验证


另请参见:

我不同意上面的帖子,即服务器端是一种双重检查或二次测量。服务器端验证是唯一的措施。可以绕过客户端验证。可以禁用Javascript

我认为客户端验证对用户更有帮助。它可以避免发布简单的错误数据,并为用户提供错误的即时反馈

不过,为了安全起见,您只能依靠服务器端验证


另请参见:

如果关闭JavaScript,则无法真正使用AJAX…;)@yc是的,但你仍然可以发送自定义请求。例如tamperdata/burp。如果关闭JavaScript,就不能真正使用AJAX…;)@yc是的,但你仍然可以发送自定义请求。例如tamperdata/打嗝。谢谢-我也这么想。我还发现了HTML5表单验证——这将有助于大多数用户。客户端验证肯定有它的作用,但服务器端才是最重要的。这里有一个很酷的工具,它可以充当代理,让您绕过javascript验证来修改POST值:谢谢——我也这么认为。我还发现了HTML5表单验证——这将有助于大多数用户。客户端验证肯定有它的作用,但服务器端才是最重要的。这里有一个很酷的工具,它充当代理,允许您修改POST值,绕过javascript验证:这不是一个安全问题。所有安全验证都必须在服务器端完成。这不是安全问题。所有安全验证都必须在服务器端完成。