Angular JS-表单和输入-Ajax与客户端验证

是我

我想知道为什么我必须在客户端验证表单,而无论如何它们都需要服务器端(ajax)验证才能不被黑客入侵?

同时进行客户端和服务器端(ajax)表单验证是否有任何好处?

我的意思是,他们做同样的事情,但是ajax花费300毫秒,而客户端花费0毫秒,这是进行重复验证的真正好理由吗?:P

另外,使用单服务器端验证可以从客户端删除不需要的js,我只看到仅具有ajax验证的好处,那您呢?

如果我要进行客户端验证,是否有一些方法/做法/逻辑可以遵循,以确保服务器端不重复验证?仅当客户端验证正常时,服务器才执行操作/请求?

其实我的逻辑是:

服务器+客户端验证更少的请求->更多的代码(重复的)->更多的麻烦->更好的UX服务器端的验证(仅ajax)更多的请求->更少的代码->麻烦更少->可能是相同的UX!

对不起,马其顿英语asd:D

希克斯森

您应该将客户端验证和服务器端验证视为一个单独的工具来实现单独的目标。

您绝对应该在服务器端进行验证的原因是,绝对没有什么可以阻止我手动编辑Javascript文件以删除任何客户端验证。即使您的代码经过精简和混淆(两者都可以撤消),您也无法阻止。

客户端验证很好(但没有服务器验证那么必要)的原因是,它实际上帮助用户创建了将继续通过服务器验证的表单。每次按键后,AngularJS都可以轻松地验证表单从用户角度来看,这太棒了。考虑所有这些形式,在密码字段旁边有一个“ Password Strength”(密码强度)计量表,说该强度必须为“良好”或更高才能通过验证。如果每次按键后都要进行ajax验证调用,则会将服务器负载增加几个数量级。

这个想法是服务器端验证只会在用户点击“提交”按钮之后进行。当用户甚至考虑点击“提交”按钮时,他们应该已经知道自己的表单将通过验证。

但是,让我们来解决您的实际问题:您只想输入一次验证规则。太棒了!现在您正在考虑干!唯一的问题是,这将需要在后端使用某些东西来自动生成客户端验证,这可能很困难。另一种可能是让您的前端打电话给服务器,询问规则,并教您的前端如何解释响应这将是一个额外的电话,但它应该是一个相对便宜的电话。不幸的是,这是很多额外的工作。如果您希望您的表格在不久的将来经常更改,那可能是值得的。在那种情况下,能够在一个地方而不是两个地方进行更改将是一个巨大的福音,并且可能值得花在前面的额外时间。

那么,客户端验证是否绝对必要?好吧,这取决于。客户可能非常挑剔,因此,如果这是一种可以为您带来实际收入的表格(银行帐户申请表格),那么您需要认识到,如果某些客户单击“提交”并查看其收入,则他们可能会关闭您的网页表格到处都是红色。如果将问题发生时告诉他们,而不是一次全部解决,那将是一个更好的体验。

但是,如果您要在截止日期之前创建Intranet应用程序,则可能需要查看优先级并做出判断;)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Angular.js和iOS客户端对Node.js应用程序进行身份验证

来自分类Dev

Angular JS SSL客户端身份验证

来自分类Dev

Angular 和 JWT - 客户端如何验证令牌?

来自分类Dev

Angular.js客户端高度

来自分类Dev

通过AJAX提交表单,但保持客户端验证

来自分类Dev

客户端表单验证

来自分类Dev

在客户端上使用Angular进行服务器端表单验证

来自分类Dev

Angular.js:对指令生成的输入字段进行表单验证

来自分类Dev

使用Angular.js验证表单输入的原始状态

来自分类Dev

Angular.js:对指令生成的输入字段进行表单验证

来自分类Dev

如何让ActiveAdmin在客户端的表单上执行输入验证?

来自分类Dev

表单部分的客户端验证

来自分类Dev

如果 Angular 应用程序正确验证客户端表单,Angular 应用程序是否需要服务器端错误处理?

来自分类Dev

MVC 4客户端验证不适用于使用Ajax加载的表单

来自分类Dev

Yii客户端验证不适用于Ajax加载的表单

来自分类Dev

Angular JS表单验证器

来自分类Dev

Angular 2 和从客户端到后端的单向绑定

来自分类Dev

Twitter typeahead.js远程和客户端搜索

来自分类Dev

无法访问客户端的Cookie | NodeJS和JS

来自分类Dev

Twitter typeahead.js远程和客户端搜索

来自分类Dev

使用Node.js验证DDP客户端

来自分类Dev

Angular JS和输入类型

来自分类Dev

奇怪的.net MVC表单身份验证,当客户端请求css / js文件时,它将重定向到登录

来自分类Dev

如何在angular js中验证没有表单标签的输入?

来自分类Dev

Caldav(和carddav)兼容的客户端,支持TLS客户端证书身份验证

来自分类Dev

Django:使用angularjs验证客户端声明的表单

来自分类Dev

在MVC的客户端验证带有模型状态的表单

来自分类Dev

使用Vue 2进行客户端表单验证

来自分类Dev

信用卡表单的客户端验证

Related 相关文章

  1. 1

    使用Angular.js和iOS客户端对Node.js应用程序进行身份验证

  2. 2

    Angular JS SSL客户端身份验证

  3. 3

    Angular 和 JWT - 客户端如何验证令牌?

  4. 4

    Angular.js客户端高度

  5. 5

    通过AJAX提交表单,但保持客户端验证

  6. 6

    客户端表单验证

  7. 7

    在客户端上使用Angular进行服务器端表单验证

  8. 8

    Angular.js:对指令生成的输入字段进行表单验证

  9. 9

    使用Angular.js验证表单输入的原始状态

  10. 10

    Angular.js:对指令生成的输入字段进行表单验证

  11. 11

    如何让ActiveAdmin在客户端的表单上执行输入验证?

  12. 12

    表单部分的客户端验证

  13. 13

    如果 Angular 应用程序正确验证客户端表单,Angular 应用程序是否需要服务器端错误处理?

  14. 14

    MVC 4客户端验证不适用于使用Ajax加载的表单

  15. 15

    Yii客户端验证不适用于Ajax加载的表单

  16. 16

    Angular JS表单验证器

  17. 17

    Angular 2 和从客户端到后端的单向绑定

  18. 18

    Twitter typeahead.js远程和客户端搜索

  19. 19

    无法访问客户端的Cookie | NodeJS和JS

  20. 20

    Twitter typeahead.js远程和客户端搜索

  21. 21

    使用Node.js验证DDP客户端

  22. 22

    Angular JS和输入类型

  23. 23

    奇怪的.net MVC表单身份验证,当客户端请求css / js文件时,它将重定向到登录

  24. 24

    如何在angular js中验证没有表单标签的输入?

  25. 25

    Caldav(和carddav)兼容的客户端,支持TLS客户端证书身份验证

  26. 26

    Django:使用angularjs验证客户端声明的表单

  27. 27

    在MVC的客户端验证带有模型状态的表单

  28. 28

    使用Vue 2进行客户端表单验证

  29. 29

    信用卡表单的客户端验证

热门标签

归档