首页 > 解决方案 > 在双方或仅在服务器端验证表单?

问题描述

我对 JS 中的表单验证有疑问。我知道应用程序的大部分输入必须在服务器端进行验证,但如果您也在客户端进行验证,您将避免对服务器的不必要请求。

另一方面,您的数据验证逻辑将暴露在您的客户端代码中(我认为会有更多机会绕过应用程序安全性),并且还会出现代码重复(在服务器和客户端中)和仔细检查一切是否正确,这不是最佳性能。

有什么标准吗?到目前为止,我一直在后端做所有这些事情,但我对此有点好奇。

我真的很感激一位经验丰富的程序员的建议(如果需要的话,可以列出优缺点)。

谢谢你。

标签: javascriptnode.jsvalidationfrontendbackend

解决方案


我没有那么有经验,但我的观点是,我只会在客户端进行验证,主要是在它影响 UI/UX 的情况下。它可能与权限有关,因此 UI 可以禁用某些东西。另一个方面是数据类型,这可以在客户端进行限制,但这不是验证。


推荐阅读