主干:部分客户端验证 + 服务器端验证
Backbone: Partial client side validation + server side validation
我已经玩了一段时间的骨干了。 我真的很喜欢 backbone.validation 库,但它只做简单的客户端验证。
在我的一些项目中,我有只能在服务器(Rails)上运行的验证。 在我的理想世界中,我将能够让服务器返回 422(无法处理的实体),并为我提供属性及其相应错误的映射,以便我可以在 UI 中突出显示它们。
有没有人遇到过这个问题?
最好进行服务器端验证。
但是,如果您的客户端验证足够彻底并且可以执行所需的突出显示,则无需将完整的突出显示参数返回到浏览器,只需阻止提交往返并在客户端执行任何您想要的 UX。
为此,我已经使用了jQuery价值插件,并取得了巨大的成功,完整的错误消息和突出显示是可能的,并且在一个插件中进行了所有必要的验证。不确定它与主干验证相比如何。
http://jqueryvalidation.org/
虽然客户端验证非常适合用户体验,但基于服务器的应用程序不应单独依赖客户端验证,因为它很容易被绕过并允许攻击。如果您选择出于 UX 目的进行客户端验证,那就太好了,但您应该始终验证服务器端。请参阅此处或此处以获取更多信息,或者只是谷歌"仅客户端验证问题"。
也就是说,当 rails 模型上的验证失败时,我们的主干 + rails 应用程序确实会返回 422(无法处理的实体)错误。如果您没有看到这一点,那么您要么没有在 rails 模型对象上进行验证,要么您在 rails 和主干模型之间存在某种断开连接。
相关文章:
- 在Javascript中复制C#服务器端验证
- 表单的服务器端验证
- 用于显示服务器端验证结果的 Jqgrid 编辑事件
- 注册,登录和分享内容通过LinkedIn和Twitter与服务器端身份验证(如Google+)
- 如何使用angular js在表单上显示服务器端验证错误消息
- 来自chrome扩展的服务器端Facebook身份验证
- Java服务器端验证
- 自定义验证在服务器端有效,但在客户端无效
- OAuth流通过电话间隙和服务器端对用户进行身份验证
- 检查客户端验证在服务器端成功/失败
- 停止 C# 在下拉列表 javascript 验证失败时继续执行服务器端脚本
- 验证后 JSON 数据服务器端
- JQuery 验证输入类型文件在服务器端失败
- 当需要服务器端验证时
- 服务器端表单验证 AJAX,通过比较不同页面上的两个文本框
- PHP 使用客户端和服务器端验证,而无需使用第三方代码
- 主干:部分客户端验证 + 服务器端验证
- 在哪里验证服务器端的用户输入
- 如何在Javascript中验证服务器端代码
- Javascript表单验证服务器端,这是可能的