Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对于企业应用程序,输入验证应该是客户端还是服务器端?_Javascript_C#_Html_Asp.net_.net - Fatal编程技术网

Javascript 对于企业应用程序,输入验证应该是客户端还是服务器端?

Javascript 对于企业应用程序,输入验证应该是客户端还是服务器端?,javascript,c#,html,asp.net,.net,Javascript,C#,Html,Asp.net,.net,我知道可能在客户端或服务器中存在验证问题。 但这一个适用于企业应用程序,如销售、客户机和系统 输入验证(如数字、字符串、日期)是否应该在客户端进行?还是两者兼而有之?或仅在服务器端 询问的原因是: 我看到一些专业会计师可以通过检查浏览器更改一些输入标签。其中一些更改了受客户端验证限制的交易的借方值 一些作为最终用户的家伙也试图通过检查(在客户端做点什么)将日期更改为以前的持续时间!这是不允许的,所有基于web的系统都从客户端进行这些验证 在服务器端验证示例中(检查分支是否存在,检查存储是否存在。

我知道可能在客户端或服务器中存在验证问题。 但这一个适用于企业应用程序,如销售、客户机和系统

输入验证(如数字、字符串、日期)是否应该在客户端进行?还是两者兼而有之?或仅在服务器端

询问的原因是:

  • 我看到一些专业会计师可以通过检查浏览器更改一些输入标签。其中一些更改了受客户端验证限制的交易的借方
  • 一些作为最终用户的家伙也试图通过检查(在客户端做点什么)将日期更改为以前的持续时间!这是不允许的,所有基于web的系统都从客户端进行这些验证
  • 在服务器端验证示例中(检查分支是否存在,检查存储是否存在。在这些情况下没有问题,因为它的服务器端已经存在。)我不谈论这些要点(与数据库相关)


    再说一遍。很抱歉提出这样的问题。但是,请提供从事企业解决方案的人员的意见,这将帮助我做出选择。

    始终验证服务器端的所有用户数据。就像在总是所有中一样

    客户端验证仅适用于UX

    编辑:全部添加

    注意:你不能信任用户

    P.P.S.:您不能信任用户!!!我甚至可能不是一个坐在屏幕前办公桌旁的用户。它可能只是一个试图破坏你的形式的软件。我的意思是它会的!有成千上万的爬虫程序最终会攻击您的系统。

    客户端验证是为了让用户清楚地知道所期望的是什么。所有提交的信息都必须在服务器上进行验证。客户端验证对于99.9%希望输入正确信息的用户来说非常有用。它通过在出现问题时立即告诉他们来改善他们的体验。但有些用户希望输入不正确的信息。就像你给他们一个值列表,然后他们编辑HTML,这样他们就可以发布错误的值,或者只是为了好玩,或者是为了做坏事。或者他们可以使用邮递员之类的工具发送请求,绕过客户端验证。作为客户端进行ajax服务器端验证怎么样?这有意义吗?您的意思是日期验证也必须在服务器端吗?如果该日期非常重要,并且不能是以前的持续时间?但只包含任何值的无用字段应该位于客户端?@Pointy!你能回答这个评论吗!我指的是特殊字段,如(借方值,有限数量)。日期(有时不能是以前的持续时间)和应该在客户端制作的内容?应该在服务器端进行。@Kokowa“始终在服务器端验证用户数据”不清楚?@Kokowa您的服务器软件甚至无法判断是否正在进行客户端检查。您的服务器不知道客户端是什么;它可能不是一个浏览器。我想如果使用asp.NETMVC的例子。我现在完全没有这方面的技能;p@yunzen好的,你被选中了!你们是说重要的数字,日期必须在服务器端?但在浏览器中充当客户端验证?这不是你的意思吗